如何在pandas中获取groupby().mean()之后的索引值列表



我对此感到困惑。我想从下面得到一个name的列表,这是groupby().mean()应用Panda DataFrame的结果。最具体地说,我想要["John", "Mary", "Suzan", "Eric"]

      score
name       
John   85.0
Mary   86.5
Suzan  90.0
Eric   100.0

上面的结果是means,它来自于以下内容:

data = pandas.DataFrame({"name": names, "score": scores})
means = data.groupby("name").mean()

由于我现在有means,我想从'means' - ["John", "Mary", "Suzan", "Eric"]中获得一个名称列表。这是可以实现的吗?

如果有索引,只需查看索引即可。如果您有一个MultiIndex,请参阅@jezrael用get_level_values给出的答案。

means.index.tolist()

您可以使用:

print (list(means.index))
['John', 'Mary', 'Suzan', 'Eric']

另一个更好的解决方案是使用Series.unique并省略groupby:

print (data.name.unique())
['John' 'Mary' 'Suzan' 'Eric']

相关内容

最新更新