猿问

使用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 分组)


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


回首忆惘然
浏览 94回答 2
2回答

holdtom

如果您不知道如何读取该文件,您可以在此处看到多种方法供您使用,因此您可以尝试其中的一种,例如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()输出:        valueid           1   13.5666672   12.4500003   10.2666674   12.3750005   12.350000

德玛西亚99

import pandas as pdfilename = "data.txt"df = pd.read_fwf(filename)df.groupby(['id']).mean()输出        valueid           1   13.5666672   12.4500003   10.2666674   12.3750005   12.350000
随时随地看视频慕课网APP

相关分类

Python
我要回答