Python 根据其他列的名称计算panda中的平均值
我有两个这样的专栏Python 根据其他列的名称计算panda中的平均值,python,python-3.x,pandas,Python,Python 3.x,Pandas,我有两个这样的专栏 name length 0 Pk 78 2 Pk 59 4 Pk 283 6 Ser 100 7 Ig_2 79 8 Ig_2 77 9 Ser 369 我想计算每个名字的平均值。 比如说 Pk - 140 ser -234.5 Ig_2 -78 如何使用python panda实现这一点 我在试这个 df.groupby(level=0).mean() 但是没有起作用。
name length
0 Pk 78
2 Pk 59
4 Pk 283
6 Ser 100
7 Ig_2 79
8 Ig_2 77
9 Ser 369
我想计算每个名字的平均值。
比如说
Pk - 140
ser -234.5
Ig_2 -78
如何使用python panda实现这一点
我在试这个
df.groupby(level=0).mean()
但是没有起作用。
是否仍要为此使用rolling()函数
In [1]: import pandas as pd
In [2]: df = pd.DataFrame([['pk', 78], ['pk', 59], ['Ig', 79], ['Ig', 77]], colu
...: mns=['name', 'length'])
In [3]: df
Out[3]:
name length
0 pk 78
1 pk 59
2 Ig 79
3 Ig 77
In [4]: df.groupby('name').mean()
Out[4]:
length
name
Ig 78.0
pk 68.5
要按升序对值排序,请执行以下操作:
In [11]: df.groupby('name').mean().sort_values(by='length',
ascending=True)
Out[11]:
length
name
pk 68.5
Ig 78.0
你的名字是什么意思?请正确格式化您的数据。@AlexanderCécile抱歉,这是一个错误。我已经格式化了数据
df.groupby('name').mean()
还有什么不起作用的确切含义?您是否查看了文档以了解级别
参数的作用?非常感谢。你能告诉我如何按升序排列吗。我指的是答案df.groupby('name').mean().sort_值(by='length',升序=True)