我正在尝试查找我的csv文件的平均特定列,该文件已被pandas读取到数据帧中。我想要找到2018年7月到2018年9月的平均值,然后显示它们。
Variable | 2018 Jul | 2018 Aug | 2018 Sep | 2018 Oct | 2018 Nov | 2018 Dec | ....
GDP | 100 | 200 | 300 | 400 | 500 | 600 | ....
我曾尝试使用此代码,但最终以'Nan‘结束。
vam2['2018 Jul-Sep'] = vam2.iloc[0:1, :2].mean()
vam2
我认为'2018年7-9月‘应该在找到均值后是200。
Variable | 2018 Jul | 2018 Aug | 2018 Sep | 2018 Oct | 2018 Nov | 2018 Dec | 2018 Jul-Sep | ....
GDP | 100 | 200 | 300 | 400 | 500 | 600 | 200 | ....
发布于 2019-08-29 16:09:20
我认为如果需要所有行的平均值,则应该删除0:1
,并将axis=1
添加到每行的mean
:
如果Variable
是列:
#for convert to numeric
vam2.iloc[:, 1:] = vam2.iloc[:, 1:].apply(pd.to_numeric, errors='coerce')
vam2['2018 Jul-Sep'] = vam2.iloc[:, 1:4].mean(axis=1)
print (vam2)
Variable 2018 Jul 2018 Aug 2018 Sep 2018 Oct 2018 Nov 2018 Dec \
0 GDP 100 200 300 400 500 600
2018 Jul-Sep
0 200.0
如果Variable
是索引:
vam2 = vam2.apply(pd.to_numeric, errors='coerce')
vam2['2018 Jul-Sep'] = vam2.iloc[:, :3].mean(axis=1)
print (vam2)
2018 Jul 2018 Aug 2018 Sep 2018 Oct 2018 Nov 2018 Dec \
Variable
GDP 100 200 300 400 500 600
2018 Jul-Sep
Variable
GDP 200.0
发布于 2019-08-29 16:13:25
df['2018 Jul-Sep'] = df.iloc[:,1:4].mean(axis=1)
https://stackoverflow.com/questions/57705786
复制相似问题