【问题标题】:All column names not listed by df.columns [duplicate]df.columns 未列出的所有列名 [重复]
【发布时间】:2020-07-06 04:31:33
【问题描述】:

我想在我的数据帧上执行 groupby 和 agg 功能,所以我执行了以下代码

basic_df = df.groupby(['S2PName','S2PName-Category'], sort=False)['S2PGTotal'].agg([('totSale','sum'), ('count','size')])

basic_df.head(2)

我的 O/P:

                              totSale               count
S2PName     S2PName-Category        
IDLY         Food                 598771.47             19749
DOSA          Food                567431.03             14611

现在我尝试使用basic_df.columns 打印列

我的 O/P:

Index(['totSale', 'count'], dtype='object')

为什么没有显示其他两列“S2pname 和 S2PName-category”。我还需要做什么才能显示它们?

谢谢!

【问题讨论】:

    标签: pandas


    【解决方案1】:

    在末尾添加as_index=Falsereset_index()

    basic_df = df.groupby(['S2PName','S2PName-Category'], sort=False,as_index=False)['S2PGTotal'].agg([('totSale','sum'), ('count','size')])
    
    #basic_df = df.groupby(['S2PName','S2PName-Category'], sort=False)['S2PGTotal'].agg([('totSale','sum'), ('count','size')]).reset_index()
    

    【讨论】:

    • 当我添加 as_index=False 时出现属性错误。但是 rest_index() 有效。有什么解释为什么熊猫会这样吗?
    • @RageshKr 有时 as_index=False 当你 agg 超过两个时不起作用,reset_index 通常可以正常工作~
    • 感谢您的解释和回答!
    猜你喜欢
    • 2020-07-30
    • 2019-02-04
    • 2013-01-04
    • 2013-02-08
    • 2011-06-01
    • 1970-01-01
    • 1970-01-01
    • 2018-04-23
    • 1970-01-01
    相关资源
    最近更新 更多