[英]Python: how to reshape a dataframe?
我有一個數據框,其中包含不同城市的信息,例如:
print(df)
ID City Var Year Value
0 AT001 Vienna CO2_PC 2000 12.77
1 AT001 Vienna CO2_PC 2005 15.42
2 AT001 Vienna CO2_PC 2008 14.23
3 AT001 Vienna AIR_POLLUTION 2002 24.09
4 AT001 Vienna AIR_POLLUTION 2005 21.03
5 AT001 Vienna AIR_POLLUTION 2008 16.77
對於每個City
我想提取不同Year
的每個變量的平均值,並具有如下數據框:
print(df1)
ID City CO2_PC AIR_POLLUTION
0 AT001 Vienna 13.81 20.66
這是一種方法:
df2 = df.groupby(['ID', 'City', 'Var'])['Value'].mean().reset_index()
df2 = pd.pivot_table(df2, index=['ID', 'City'], columns=['Var']).reset_index()
df2.columns = [' '.join(col).strip() for col in df2.columns.values]
結果
ID City Value AIR_POLLUTION Value CO2_PC
0 AT001 Vienna 20.63 14.14
說明
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.