【发布时间】:2019-05-17 17:36:13
【问题描述】:
我有一个如下例所示的数据框:
year x y
2016 o 227
2018 o 214
2016 o 56
2018 o 62
2018 o 87
2019 o 40
2017 r 15
2016 i 14
2016 o 88
2014 o 48
我想得到一个输出,其中 y 的平均值是根据 grouby on year 计算的,然后进一步计算 x。像这样的:
year x y
2016 o (227 + 56 + 88)/3 = 123.66 = 124 (Need just the final value)
2018 o (214 + 62 + 87)/3 = 121 (Need just the final value)
2019 o 40
2017 r 15
2016 i 14
2014 o 48
我想我找到了一种方法(但我可能错了),但结果却是在一个非数据框中:
print(part_b[['year', 'x', 'y']].groupby(['year', 'x']).mean())
生成的输出:(以下输出中的结果来自我的整个数据)
y
year x
2014 o 48.000000
2016 i 14.000000
o 117.000000
2017 o 71.000000
r 27.500000
2018 i 23.000000
o 97.428571
2019 i 11.000000
o 115.500000
'''
Whereas I would like to have this:
```python
year x y
2014 o 48
2016 i 14
2016 o 117
2017 o 71
2017 r 28
2018 i 23
2018 o 97
2019 i 11
2019 o 116
'''
【问题讨论】:
标签: python python-3.x dataframe group-by