首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何对pandas中的特定列求和

如何对pandas中的特定列求和
EN

Stack Overflow用户
提问于 2019-08-29 16:07:34
回答 2查看 47关注 0票数 0

我正在尝试查找我的csv文件的平均特定列,该文件已被pandas读取到数据帧中。我想要找到2018年7月到2018年9月的平均值,然后显示它们。

代码语言:javascript
运行
复制
Variable | 2018 Jul | 2018 Aug | 2018 Sep | 2018 Oct | 2018 Nov | 2018 Dec |  ....
GDP      | 100      | 200      | 300      | 400      | 500      | 600      | ....

我曾尝试使用此代码,但最终以'Nan‘结束。

代码语言:javascript
运行
复制
vam2['2018 Jul-Sep'] = vam2.iloc[0:1, :2].mean()

vam2

我认为'2018年7-9月‘应该在找到均值后是200。

代码语言:javascript
运行
复制
Variable | 2018 Jul | 2018 Aug | 2018 Sep | 2018 Oct | 2018 Nov | 2018 Dec | 2018 Jul-Sep |   ....
GDP      | 100      | 200      | 300      | 400      | 500      | 600      | 200          | ....
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-08-29 16:09:20

我认为如果需要所有行的平均值,则应该删除0:1,并将axis=1添加到每行的mean

如果Variable是列:

代码语言:javascript
运行
复制
#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是索引:

代码语言:javascript
运行
复制
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  
票数 2
EN

Stack Overflow用户

发布于 2019-08-29 16:13:25

代码语言:javascript
运行
复制
df['2018 Jul-Sep'] = df.iloc[:,1:4].mean(axis=1)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57705786

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档