Groupby 多列计算大小并计算 Pandas 中另一列的平均值

是这样吗

我有一个数据框如下:

   index    col1    col2   col3  col4                           col5
0      0  Week_1   James   John     1                  when and why?
1      1  Week_1   James   John     3             when and why? How?
2      2  Week_2   James   John     2  How far is it? Are you going?
3      3  Week_2    Mark    Jim     3              Do you know when?
4      4  Week_2  Andrew  Simon     3                     What time?
5      5  Week_2  Andrew  Simon     6                     What time?

我怎么能GROUPBYcol2col3然后计算平均值和计数的数量col2col3

df.groupby(['col2','col3'], as_index=False).agg({'col4':'mean'}).reset_index()

输出:

   index    col2   col3  col4
0      0  Andrew  Simon   4.5
1      1   James   John   2.0
2      2    Mark    Jim   3.0

df.groupby(['col2','col3']).size().reset_index()

输出:

     col2   col3  0
0  Andrew  Simon  2
1   James   John  3
2    Mark    Jim  1

我怎么能得到这样的结果?谢谢。

   index    col2   col3  mean  count
0      0   James   John   2.0      3
1      3    Mark    Jim   3.0      1
2      4  Andrew  Simon   4.5      2
艾伦

您可以使用 groupby 和 agg(可能需要使用 pandas 0.25+)。

(
    df.groupby(['col2','col3'])
    .agg(index=('index', 'first'),
         mean=('col4', 'mean'),
         count=('col4', 'size'))
    .reset_index()
    .sort_values(by='index')
)

    col2    col3    index   mean    count
1   James   John    0       2.0     3
2   Mark    Jim     3       3.0     1
0   Andrew  Simon   4       4.5     2   

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Pandas/Python groupby 然后计算每组中另一列的平均值

使用 groupby 和 Pandas 中的聚合函数创建多列计算

计算pandas中的groupby(几列)平均值

Pandas - 计算另一列中选定单元格的平均值

python,pandas,使用groupby计算具有多索引的df中的平均值

根据熊猫中的另一列计算一列的平均值

pandas:计算一列中每一行的numpy数组的平均值

计算pandas列中指定值范围的平均值,并存储为另一列

Groupby pandas 但对多列执行计算

Pandas groupby 计算每第 n 行的平均值

Python Pandas计算groupby平均值的Z得分

Python pandas groupby 聚合一列,同时获得其余列的平均值

Pandas DataFrame:计算一列中第二列内容相同的那些行的平均值?

选择pandas groupby中的前n个项目并计算平均值

根据另一列计算列的平均值

另一列非 NaN 的 Groupby 计数和 Pandas 中相同列的具体计算

python pandas逐列计算平均值

计算多列的平均值,而忽略NaN pandas numpy

根据另一列中的其他 ID 计算 R 中列的平均值

根据另一列计算 groupby 中的百分比

计算另一列中两列的平均值

Pandas GroupBy的平均值

如何计算在熊猫中另一列上分组的平均值

根据r中另一列的条件计算每小时平均值

计算文件中每一列的平均值

如何通过考虑另一列中的信息来计算一列中的平均值?

获取pandas中groupby的最大值和最小值之间的差异并计算平均值

提取 Pandas 中每一列的平均值

如何从另一列计算pandas数据帧列中匹配项的数量?