我有一个包含 2 列的 ascii 文件,如下所示;id value1 15.11 12.1 1 13.52 12.42 12.53 10.13 10.23 10.54 15.14 11.24 11.54 11.75 12.55 12.2我想估计每个 id 的列“值”的平均值(即按 id 分组)是否可以使用 numpy 或 pandas 在 python 中做到这一点?
2 回答
holdtom
TA贡献1805条经验 获得超10个赞
如果您不知道如何读取该文件,您可以在此处看到多种方法供您使用,因此您可以尝试其中的一种,例如pd.read_csv().
阅读该文件后,您可以使用 pandas 函数 aspd.DataFrame.groupby和来尝试此操作pd.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
德玛西亚99
TA贡献1770条经验 获得超3个赞
import pandas as pd
filename = "data.txt"
df = pd.read_fwf(filename)
df.groupby(['id']).mean()
输出
value
id
1 13.566667
2 12.450000
3 10.266667
4 12.375000
5 12.350000
添加回答
举报
0/150
提交
取消