【发布时间】:2019-12-23 15:13:21
【问题描述】:
我有一个数据框,其值分布在几列中。我想计算特定列中所有项目的平均值。
我查找的所有解决方案最终都会给我每列的单独平均值或所选列的平均值。
例如我的数据框如下所示:
Name a b c d
Alice 1 2 3 4
Alice 2 4 2
Alice 3 2
Alice 1 5 2
Ben 3 3 1 3
Ben 4 1 2 3
Ben 1 2 2
我想查看每个“爱丽丝”的 b 和 c 列中的值的平均值:
当我尝试时:
df[df["Name"]=="Alice"][["b","c"]].mean()
结果是:
b 2.00
c 4.00
dtype: float64
在另一篇文章中,我发现了一个建议,即为每个轴尝试一次“双”意味着一次,例如:
df[df["Name"]=="Alice"][["b","c"]].mean(axis=1).mean()
但结果是:
3.00
这是两列的平均值。
我期待一种计算方法: (2 + 3 + 4 + 5) / 4 = 3.50
有没有办法在 Python 中做到这一点?
【问题讨论】:
标签: python python-3.x pandas numpy