【问题标题】:How to get a list of index values after groupby().mean() in pandas?如何在熊猫中的 groupby().mean() 之后获取索引值列表?
【发布时间】:2016-11-24 01:53:12
【问题描述】:

我被这个困住了。我想从以下获取name 的列表,这是groupby().mean() 应用pandas 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"] 中获取姓名列表。这可以实现吗?

【问题讨论】:

    标签: python pandas dataframe group-by mean


    【解决方案1】:

    你可以使用:

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

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

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

    【讨论】:

    • 谢谢。这也很优雅。
    • 这很好,但我的任务是腌制方法并将其加载到另一个文件中以进行进一步操作。如果我没有被分配做酸洗任务,unique() 绝对更好:) 非常感谢你的帮助:)
    【解决方案2】:

    如果您有索引,只需查看索引即可。如果您有 MultiIndex,请参阅 @jezrael 的回答,使用 get_level_values

    means.index.tolist()
    

    【讨论】:

      猜你喜欢
      • 2020-11-21
      • 2023-02-17
      • 1970-01-01
      • 1970-01-01
      • 2018-09-26
      • 2022-07-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多