Pandas - 计算字段的平均值并乘以出现次数
Posted
技术标签:
【中文标题】Pandas - 计算字段的平均值并乘以出现次数【英文标题】:Pandas - Calculating Average of Field and Multiply By Number of Occurrences 【发布时间】:2017-06-13 17:43:48 【问题描述】:这是一个数据框。我想计算播放类型(short_pass、long_pass、deep_pass)的平均比率,并将其乘以 play_type 发生的频率。
我可以做一个 group_by play_type 并获得个人平均值,但我坚持获取 play_type 发生的次数(短传发生两次),然后将两者相乘。
谢谢!
Quarterback Play_Type Ratio
Brady Short_Pass 5.4
Brady Long_Pass 7.2
Brady Deep_Pass 8.1
Rodgers Long_Pass 6.4
Rodgers Deep_Pass 7.2
Miller Short_Pass 4.2
Miller Deep_Pass 7.3
【问题讨论】:
【参考方案1】:g = df.groupby('Play_Type')
g.Ratio.mean() * g.Play_Type.count()
Play_Type
Deep_Pass 22.6
Long_Pass 13.6
Short_Pass 9.6
dtype: float64
不过,这和sum
是一样的
g = df.groupby('Play_Type')
g.Ratio.sum()
Play_Type
Deep_Pass 22.6
Long_Pass 13.6
Short_Pass 9.6
Name: Ratio, dtype: float64
【讨论】:
谢谢。我试图用多个 groupby 语句来做这更清楚。度过一个愉快的夜晚!以上是关于Pandas - 计算字段的平均值并乘以出现次数的主要内容,如果未能解决你的问题,请参考以下文章
pandas使用groupby函数基于指定分组变量对dataframe数据进行分组使用mean函数计算所有分组中指定数值变量的聚合平均值即字段在指定分组的平均值([]方括号指定需要计算的数值字段)