gpt4 book ai didi

python - 获取 Pandas 数据框中总数的百分比

转载 作者:行者123 更新时间:2023-11-28 22:16:05 27 4
gpt4 key购买 nike

我有一个按以下方式配置的数据框:

date_string | type | amount

2015-01-01 | a | 500

2015-01-01 | b | 300

2015-01-01 | c | 200

2015-01-02 | a | 400

2015-01-02 | b | 600

2015-01-02 | c | 100

我希望添加一个新列,其中包含按日期分割的总百分比,并得到如下内容:

date_string | type | amount | percent

2015-01-01 | a | 500 | 0.5

2015-01-01 | b | 300 | 0.3

2015-01-01 | c | 200 | 0.2

2015-01-02 | a | 300 | 0.3

2015-01-02 | b | 600 | 0.6

2015-01-02 | c | 100 | 0.1

最佳答案

使用GroupBy.transform使用sum,原始列除以Series.div :

df['percent'] = df['amount'].div(df.groupby('date_string')['amount'].transform('sum'))
print (df)
date_string type amount percent
0 2015-01-01 a 500 0.500000
1 2015-01-01 b 300 0.300000
2 2015-01-01 c 200 0.200000
3 2015-01-02 a 400 0.363636
4 2015-01-02 b 600 0.545455
5 2015-01-02 c 100 0.090909

关于python - 获取 Pandas 数据框中总数的百分比,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52427481/

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