我想将“Output”文件夹中的许多dbf表合并到一个表中。这是我的代码,但它不起作用(错误显示如下)。:
import arcpy
import os
arcpy.env.workspace="C:\\Users\\Desktop\\Betty\\Output"
listTable = arcpy.ListTables ()
arcpy.Merge_management (listTable, 'C:\\Users\\Desktop\\Betty\\Output\\ppt.dbf')
print "done!"
追踪(最近一次通话): 文件“C:\ Users \ caobaijing \ Desktop \ Betty \ Python \ MergeTables.py”,第7行,in arcpy.Merge_management(listTable,“C:\ Users \ caobaijing \ Desktop \ Betty \ Output \ ppt.dbf”) 合并中的文件“C:\ Program Files(x86)\ ArcGIS \ Desktop10.1 \ arcpy \ arcpy \ management.py”,第3762行 提高e ExecuteError:无法执行。参数无效。 错误000732:输入数据集:数据集 * *不存在或不受支持 无法执行(合并)。
答案 0 :(得分:1)
对于其他发现此问题的人来说,代码运行得很好。必须是工作空间目录中的路径错误或没有dbfs。
import arcpy
arcpy.env.workspace = 'C:/junk/tables'
listTable = arcpy.ListTables()
arcpy.Merge_management(listTable, 'C:/junk/tables/ppt.dbf')
print "done!"
答案 1 :(得分:0)
上面的答案对我来说不起作用,listTable一直以空白结果回来。使用带有* .dbf通配符的ListFiles就可以了。
我使用filezilla从ftp://ftp2.census.gov/geo/tiger/TIGER2014/PLACEEC/
下载一堆压缩的shapefile我将它们解压缩到一个目录(C:/ Temp)中,以便所有shapefile都在一个文件夹中。 我有7个拉链,所以我只选择了所有的zip文件,右击 - > 7-zip - >在这里提取。
import arcpy
arcpy.env.workspace = "C:/Temp"
files = arcpy.ListFiles ( "*.dbf")
arcpy.Merge_management ( files, "C:/Temp/output.dbf" )
我在excel中打开了output.dbf,我将所有数据放在一起。