gpt4 book ai didi

python - 根据平均值向数据框添加新列

转载 作者:太空宇宙 更新时间:2023-11-03 21:27:51 24 4
gpt4 key购买 nike

我有一个数据框,其中包括项目类别、货币、投资者数量、目标等,我想创建一个新列“其类别的平均成功率”:

   state        category main_category currency  backers country  \

0 0 Poetry Publishing GBP 0 GB
1 0 Narrative Film Film & Video USD 15 US
2 0 Narrative Film Film & Video USD 3 US
3 0 Music Music USD 1 US
4 1 Restaurants Food USD 224 US

usd_goal_real duration year hour
0 1533.95 59 2015 morning
1 30000.00 60 2017 morning
2 45000.00 45 2013 morning
3 5000.00 30 2012 morning
4 50000.00 35 2016 afternoon

我有系列格式的平均成功率:

Dance           65.435209

Theater 63.796134

Comics 59.141527

Music 52.660558

Art 44.889045

Games 43.890467

Film & Video 41.790649

Design 41.594386

Publishing 34.701650

Photography 34.110847

Fashion 28.283186

Technology 23.785582

现在我想添加一个新列,其中每列都有与其类别相匹配的成功率,即无论该行是技术,新列都将包含该行的 23.78。

df[category_success_rate] = i 希望输出列是与“主类别”列中的类别匹配的成功百分比。

最佳答案

我认为你需要GroupBy.transform使用 bool 掩码,df['state'].eq(1)(df['state'] == 1):

df['category_success_rate'] = (df['state'].eq(1)
.groupby(df['main_category']).transform('mean') * 100)

替代方案:

df['category_success_rate'] = ((df['state'] == 1)
.groupby(df['main_category']).transform('mean') * 100)

关于python - 根据平均值向数据框添加新列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53738831/

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