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

如何避免Jupyter Notebook中Geopandas代码打印多余索引

解决Jupyter Notebook中Geopandas sjoin后打印完整索引的问题

在Jupyter Notebook中,代码块最后一个表达式的结果会被自动输出,你的代码最后一行是joined变量的赋值操作,因此Notebook会打印出该变量的完整内容,包括全部索引。可以通过以下几种方式避免:

  • 在最后一行末尾添加分号:分号会抑制Jupyter的自动输出行为,修改后的代码如下:

    import geopandas as gpd
    
    gdf = gpd.read_file("adm4.shp")
    gdf['coordinates'] = gdf.geometry.apply(lambda x: (x.centroid.y, x.centroid.x))
    
    df['coordinates'] = list(zip(df.latitude_geopy, df.longitude_geopy))
    
    joined = gpd.sjoin(gdf, df, how="inner", op='contains', lsuffix='left', rsuffix='right');
    
  • 不让变量赋值成为代码块最后一行:在最后添加一个非赋值类语句,比如空打印操作,就能阻止完整结果输出:

    import geopandas as gpd
    
    gdf = gpd.read_file("adm4.shp")
    gdf['coordinates'] = gdf.geometry.apply(lambda x: (x.centroid.y, x.centroid.x))
    
    df['coordinates'] = list(zip(df.latitude_geopy, df.longitude_geopy))
    
    joined = gpd.sjoin(gdf, df, how="inner", op='contains', lsuffix='left', rsuffix='right')
    print()
    
  • 按需查看部分数据:如果需要查看结果但不想输出全部内容,用head()或tail()方法只显示前几行/后几行即可:

    import geopandas as gpd
    
    gdf = gpd.read_file("adm4.shp")
    gdf['coordinates'] = gdf.geometry.apply(lambda x: (x.centroid.y, x.centroid.x))
    
    df['coordinates'] = list(zip(df.latitude_geopy, df.longitude_geopy))
    
    joined = gpd.sjoin(gdf, df, how="inner", op='contains', lsuffix='left', rsuffix='right')
    joined.head()  # 仅显示前5行数据
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.30 20:24:31