gpt4 book ai didi

python - 我怎样才能得到负的百分比和最负的顺序?

转载 作者:行者123 更新时间:2023-12-04 10:36:25 26 4
gpt4 key购买 nike

我想出了一种基于两个字段进行分组并获取计数的方法:

df.groupby(['brand','result']).size()
df.groupby(['brand','result']).count()

这会产生相同的结果。我的数据现在看起来像这样。
Johnson's Baby Powder   negative         21  
neutral 5
positive 121

Estee Lauder negative 7
positive 23

Calvin Klein negative 10
neutral 3
positive 29

我想获得每个品牌的结果百分比,就像这样。
Johnson's Baby Powder   negative    21  0.142857143
neutral 5 0.034013605
positive 121 0.823129252

Estee Lauder negative 7 0.233333333
positive 23 0.766666667

Calvin Klein negative 10 0.238095238
neutral 3 0.071428571
positive 29 0.69047619

不过,最终,我只想显示具有负值 > 20% 的“结果”的“品牌”。

所以,我想看看这个(以及其他符合业务逻辑规则的品牌)。
Estee Lauder            negative    7   0.233333333
positive 23 0.766666667

我怎样才能做到这一点?

最佳答案

尝试

x = df.groupby(['brand'])['result'].value_counts(normalize=True)

样本数据输出
>>> y = x.loc[(x.index.get_level_values(1) == 'negative')]

>>> y[y>0.2]
airline airline_sentiment
American negative 0.710402
Delta negative 0.429793
Southwest negative 0.490083
US Airways negative 0.776862
United negative 0.688906
Virgin America negative 0.359127
Name: airline_sentiment, dtype: float64

>>> y[y>0.2].index.get_level_values(0)
Index(['American', 'Delta', 'Southwest', 'US Airways', 'United',
'Virgin America'],
dtype='object', name='airline')

关于python - 我怎样才能得到负的百分比和最负的顺序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60162102/

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