将 Pandas 数据帧写入 DBF 文件?
Write Pandas Dataframe to DBF File?
我正在使用 shapefile,它的属性数据存储在 DBF 文件中。我需要使用 Pandas 操作属性,并将新的 DBF 数据写回磁盘。
不幸的是 Pandas 数据帧没有 df.to_dbf
方法(而 R 有)。我四处寻找,但似乎没有看到任何明显的方法来完成这项任务。
如何将 pandas 数据帧保存为 DBF 文件?
您应该考虑使用 rpy2
将数据框转换为 R
对象,然后 运行 像这样:
from rpy2.robjects import pandas2ri
pandas2ri.activate()
from rpy2.robjects.packages import importr
base = importr('base')
base.write.dbf(df)
应该可以无缝工作,我希望!
到目前为止,加载、操作和保存与 shapefile 关联的 dbf 文件的最简单方法是使用 GeoPandas 库。这可以将 dbf 作为数据帧加载:
gf = gpd.read_file('some_shapefile.shp')
然后您可以使用标准 Pandas 命令处理所有数据,并使用以下命令将数据导出为 Shapefile(或其他地理文件):
gf.to_file('export.shp')
太棒了!
我正在使用 shapefile,它的属性数据存储在 DBF 文件中。我需要使用 Pandas 操作属性,并将新的 DBF 数据写回磁盘。
不幸的是 Pandas 数据帧没有 df.to_dbf
方法(而 R 有)。我四处寻找,但似乎没有看到任何明显的方法来完成这项任务。
如何将 pandas 数据帧保存为 DBF 文件?
您应该考虑使用 rpy2
将数据框转换为 R
对象,然后 运行 像这样:
from rpy2.robjects import pandas2ri
pandas2ri.activate()
from rpy2.robjects.packages import importr
base = importr('base')
base.write.dbf(df)
应该可以无缝工作,我希望!
到目前为止,加载、操作和保存与 shapefile 关联的 dbf 文件的最简单方法是使用 GeoPandas 库。这可以将 dbf 作为数据帧加载:
gf = gpd.read_file('some_shapefile.shp')
然后您可以使用标准 Pandas 命令处理所有数据,并使用以下命令将数据导出为 Shapefile(或其他地理文件):
gf.to_file('export.shp')
太棒了!