gpt4 book ai didi

python - pandas groupby 使用字典值,应用 sum

转载 作者:太空宇宙 更新时间:2023-11-03 13:59:43 25 4
gpt4 key购买 nike

我有一个默认字典:

dd = defaultdict(list,
{'Tech': ['AAPL','GOOGL'],
'Disc': ['AMZN', 'NKE'] }

和一个看起来像这样的数据框:

         AAPL AMZN GOOGL NKE
1/1/10 100 200 500 200
1/2/10 100 200 500 200
1/310 100 200 500 200

我想要的输出是根据字典的值对数据帧求和,以键作为列:

         TECH DISC 
1/1/10 600 400
1/2/10 600 400
1/3/10 600 400

pandas groupby 文档说如果你传递一个字典它会这样做但是我最终得到的只是一个空的 df 使用这个代码:

df.groupby(by=dd).sum()   ##returns empty df

最佳答案

以正确的方式创建dict,你可以使用by with axis=1

# map each company to industry
dd_rev = {w: k for k, v in dd.items() for w in v}
# {'AAPL': 'Tech', 'GOOGL': 'Tech', 'AMZN': 'Disc', 'NKE': 'Disc'}

# group along columns
df.groupby(by=dd_rev,axis=1).sum()

Out[160]:
Disc Tech
1/1/10 400 600
1/2/10 400 600
1/310 400 600

关于python - pandas groupby 使用字典值,应用 sum,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50789425/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com