首页 > 解决方案 > 使用python估计特定列的平均值组

问题描述

我有一个包含 2 列的 ascii 文件,如下所示;

id value
1  15.1
1  12.1 
1  13.5
2  12.4
2  12.5
3  10.1
3  10.2
3  10.5
4  15.1
4  11.2
4  11.5
4  11.7
5  12.5
5  12.2

我想估计每个 id 列“值”的平均值(即按 id 分组)

是否可以在 python 中使用 numpy 或 pandas 做到这一点?

标签: pythonnumpyaverage

解决方案


如果您不知道如何读取文件,您可以在此处看到几种可以使用的方法,因此您可以尝试其中一种,例如pd.read_csv().

阅读完文件后,您可以尝试使用 pandas 函数 aspd.DataFrame.groupbypd.Series.mean()

df.groupby('id').mean()

#if df['id'] is the index, try this:
#df.reset_index().groupby('id').mean()

输出:

        value
id           
1   13.566667
2   12.450000
3   10.266667
4   12.375000
5   12.350000

推荐阅读