You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Geopandas将noiseclass长表转换为按行政区分组的宽表

实现方法

你需要的是长表转宽表的操作,Geopandas完全兼容Pandas的表格转换方法,按以下步骤操作即可:

  • 如果你当前持有的是多级索引的Series,先重置索引转为普通DataFrame:
# 假设你的原数据变量名为noise_series
df = noise_series.reset_index(name='count')
  • 调用pivot方法即可完成格式转换:
wide_df = df.pivot(
    index='NAME',
    columns='noiseclass',
    values='count'
).reset_index()
  • 可选优化:如果需要把行政区缺失的噪声区间统计值填充为0,修改为如下写法:
wide_df = df.pivot(
    index='NAME',
    columns='noiseclass',
    values='count'
).reset_index().fillna(0)
  • 如果你的原始数据是携带空间几何字段的GeoDataFrame,可使用pivot_table保留几何信息:
# 假设原GeoDataFrame变量名为gdf
wide_gdf = gdf.pivot_table(
    index=['NAME', 'geometry'],
    columns='noiseclass',
    values='count',
    aggfunc='sum'
).reset_index()
# 转换完成后重新设置为GeoDataFrame格式
wide_gdf = gpd.GeoDataFrame(wide_gdf, geometry='geometry')

内容的提问来源于stack exchange,提问作者xhessiela

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 03:27:03