首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何根据索引将不同字典中的值相加到pandas现有列?

如何根据索引将不同字典中的值相加到pandas现有列?
EN

Stack Overflow用户
提问于 2019-09-11 18:02:42
回答 1查看 95关注 0票数 1

我有一个用户的多个帐户的嵌套字典。每个帐户都有一些键的浮点值。

我希望将所有帐户(字典)的值汇总到单个列中,同时避免嵌套迭代,因为字典很大。

申请前:

另一方面,我有两个不同的答案

代码语言:javascript
复制
d = {
      a:{0:5,3:2,4:1},
      b:{1:4,3:1,4:10}
    }

total = pd.Series(index=list(range(6)),data=0,name='Total')

for acc in d.keys():
   for k,v in d[acc].items():
       total[k] += v  

汇总应用代码后:

我希望避免迭代所有的a,b键,但不介意遍历d.keys()

有没有办法使用.map()或其他有效的方法来做到这一点呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-09-11 18:09:42

从字典构造一个数据帧,使用sum将两列添加在一起,然后使用DataFrame.add添加两个数据帧

代码语言:javascript
复制
df = pd.DataFrame(d, index=total.index)
total.add(df.sum(axis=1))

0     5.0
1     4.0
2     0.0
3     3.0
4    11.0
5     0.0
dtype: float64
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57886725

复制
相关文章

相似问题

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