我遇到了一些困难,因为我真的是算法和代码的初学者。我有一组数据想要分析。
我的目标是根据名称获得测量的平均值
我有一个包含两列的数据框:
姓名 | 测量值 |
---|---|
PN1 | 5.4 |
PN2 | 6.5 |
PN3 | 9.6 |
PN2 | 5.4 |
PN4 | 7.4 |
PN2 | 5.4 |
... | ... |
... | ... |
我想要获得的是这样的:按名称测量平均值的名称:
姓名 | 平均测量值 |
---|---|
PN1 | 5.4 |
PN2 | 6.5 |
PN3 | 9.6 |
PN4 | 5.4 |
我是 Pandas 的初学者,所以我需要帮助;)
提前致谢
我不知道如何继续
您可以使用
groupby()
:
import pandas as pd
D = {
'Name': ['PN1', 'PN2', 'PN3', 'PN2', 'PN4', 'PN2'],
'Measurement value': [5.4, 6.5, 9.6, 5.4, 7.4, 5.4]
}
df = pd.DataFrame(D)
res = df.groupby('Name', as_index=False).mean()
res.columns = ['Name', 'AVG Measurement value']
print(res)
Name AVG Measurement value
0 PN1 5.400000
1 PN2 5.766667
2 PN3 9.600000
3 PN4 7.400000