不使用Arcpy的DBF表连接



我已经创建了一个相当大的CSV文件(63000行,大约40列),我想加入一个ESRI Shapefile。我用过ArcPy,但整个过程需要30分钟!分钟。如果我与原始(小)CSV文件连接,将其与Shapefile连接,然后使用ArcPy进行计算,并不断添加新字段并计算需要20分钟的时间。我正在寻找一个更快的解决方案,发现还有其他Python模块,如PySHP或DBFPy,但我没有找到任何连接表的方法,希望可以更快。

我的目标已经是尽可能远离ArcPy,最好只使用Python,所以最好不要使用PostgreSQL和类似的。

有人有解决方案吗?非常感谢!

不是针对我的问题的编程解决方案,而是一个实用的解决方案:

我的shapefile总是静态的,只有特性的属性会改变。因此,我复制了我的原始shapefile(只有结尾为.shp, .shx, .prj的基本文件)到我的输出文件夹,并将其重命名为我想要的名称。然后,我用所有计算创建我的csv文件,并将其转换为DBF,并以我的新shapefile的名称保存到输出文件夹中。ArcGIS现在将加载shapefile与我自己的DBF文件,我甚至不需要做任何表连接!

现在我的程序只运行了50秒!

我仍然对表连接问题的更多解决方案感兴趣,也许我会在将来再次遇到这个问题,其中shapefile并不总是静态的。我并没有真正理解Nan的解决方案,我仍然处于Python的"高级初学者"水平:)

欢呼

最新更新