1 回答
TA贡献1780条经验 获得超1个赞
我认为您需要聚合sum
- 默认情况下排除所有非数字列,因此您可以通过DataFrame.reindex
原始列添加它们,并通过以下方式替换缺失值ALL
:
print (df.groupby('Time', as_index=False).sum())
Time Temperature Pressure Speed
0 1 9.3 3.3 60
1 2 9.6 3.3 63
2 3 9.9 3.3 66
3 4 10.2 3.3 69
4 5 10.5 3.3 72
df = df.groupby('Time', as_index=False).sum().reindex(df.columns, axis=1, fill_value='ALL')
print (df)
Region Time Region_Code Temperature Pressure Speed
0 ALL 1 ALL 9.3 3.3 60
1 ALL 2 ALL 9.6 3.3 63
2 ALL 3 ALL 9.9 3.3 66
3 ALL 4 ALL 10.2 3.3 69
4 ALL 5 ALL 10.5 3.3 72
编辑:对于自定义替换缺失值,请DataFrame.fillna
与字典一起使用 - 具有替换值的列名称:
d = {'Region':'GLOBAL','Region_Code':'ALL'}
df1 = df.groupby('Time', as_index=False).sum().reindex(df.columns, axis=1).fillna(d)
print (df1)
Region Time Region_Code Temperature Pressure Speed
0 GLOBAL 1 ALL 9.3 3.3 60
1 GLOBAL 2 ALL 9.6 3.3 63
2 GLOBAL 3 ALL 9.9 3.3 66
3 GLOBAL 4 ALL 10.2 3.3 69
4 GLOBAL 5 ALL 10.5 3.3 72
添加回答
举报