为了账号安全,请及时绑定邮箱和手机立即绑定

如何将 pandas df 与 geopandas df 合并以在 shapefile 上绘图

如何将 pandas df 与 geopandas df 合并以在 shapefile 上绘图

一只名叫tom的猫 2023-07-18 17:42:05
我正在使用以下 shapefile,可以在 Github 上找到该文件。我不会包含输出,但这里是将其作为 geopandas df 读取并绘制 shapefile 的代码。states = geopandas.read_file('usa-states-census-2014.shp') states.head() states.plot()我还有以下 df,这是USArrests可以在 Kaggle 上找到的数据集。我想做的是合并两个数据集,这样我就可以使用USArrests. 我运行以下代码来合并数据集。df = pd.read_csv("USArrests.csv") df.rename(columns = {'Unnamed: 0':'NAME'}, inplace = True) merged = pd.merge(df, states, on=['NAME']).drop_duplicates(subset=['NAME'])合并有效,但现在当我运行时,states.plot()我得到了一个线图,我假设这是因为 df 不再是GeoDataFrame.我的问题是,如何从中获取数据USArrests并使用它在形状文件上绘制颜色图?谢谢!
查看完整描述

1 回答

?
皈依舞

TA贡献1851条经验 获得超3个赞

使用GeoDataFrame.merge方法。这样它仍然是 GeoDataFrame。在你的情况下发生的事情merged只是 pandas.DataFrame 。

merged = states.merge(df, on='NAME').drop_duplicates(subset=['NAME'])

我猜测有点正确的形式,因为您没有显示任何数据帧的结构。


查看完整回答
反对 回复 2023-07-18
  • 1 回答
  • 0 关注
  • 89 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信