Python(Geo-)Pandas数据框标签仅特定行

时间:2018-07-27 14:31:47

标签: python geopandas

我为自己是一个Python初学者而预先道歉,可能有一个简单的问题,但是我找不到任何解决方案。

我正在研究Geopandas全球地图,为此我希望为所有满足特定条件的国家/地区提供标签。

    import geopandas
    import pandas
    import matplotlib.pyplot as plt

    get_ipython().run_line_magic('matplotlib', '')

    fp="countries_shp/countries.shp"

    map_df = geopandas.read_file(fp)
    map_df.head()

    df = pandas.read_csv("NDC_LIST.csv", sep=';')
    df.head()
    df = df[['ISO3','TARGET', 'COMB', 'MENTIONED', 'ACCESSFULL', 'MOBILE']]

    merged = map_df.set_index('ISO3').join(df.set_index('ISO3'))
    merged.head()
    merged.fillna(0)

    cols = ['TARGET', 'MENTIONED', 'COMB']
    for col in cols:
       merged[col] = merged[col].apply(lambda x: int(x) if x == x else 0)
    merged.head()

    vmin = merged['COMB'].min()
    vmax = merged['COMB'].max()

    fig, ax = plt.subplots(1, figsize=(12, 6))

    merged.plot(column='COMB', cmap='Reds',linewidth=0.8, ax=ax)
    merged.apply(lambda x: ax.annotate(s=x.NAME,                         
    xy=x.geometry.centroid.coords[0], ha='center'),axis=1);

    ax.axis('off')
    ax.set_title('OFF-GRID NDC COMPONENTS', fontdict={'fontsize': '25',         
    'fontweight' : '3'})

我确实阅读了以下选项:

    .where(merged.COMB > 0)

但是我不确定如何包含它。

非常感谢,我们将不胜感激。

0 个答案:

没有答案