Python groupby结果为空datafram

Python groupby结果为空datafram,python,pandas,dataframe,pandas-groupby,Python,Pandas,Dataframe,Pandas Groupby,问题: business_group business_unit cost_center GL_code profit_center count NaN a 12 12-09 09 1 NaN a 12 12-09 09 1 NaN b 23 23-87

问题:

business_group business_unit cost_center GL_code profit_center count
NaN            a             12          12-09   09            1
NaN            a             12          12-09   09            1
NaN            b             23          23-87   87            1
NaN            b             23          23-87   87            1
NaN            b             34          34-76   76            1
group_df = df.groupby(['business_group', 'business_unit','cost_center','GL_code','profit_center'],
           as_index=False).count()
business_group business_unit cost_center GL_code profit_center count
NaN            a             12          12-09   09            2
NaN            b             23          23-87   87            2
NaN            c             34          34-76   76            1
groupby对下面的数据,导致数据框为空,不确定如何修复,请帮助,谢谢

数据:

business_group business_unit cost_center GL_code profit_center count
NaN            a             12          12-09   09            1
NaN            a             12          12-09   09            1
NaN            b             23          23-87   87            1
NaN            b             23          23-87   87            1
NaN            b             34          34-76   76            1
group_df = df.groupby(['business_group', 'business_unit','cost_center','GL_code','profit_center'],
           as_index=False).count()
business_group business_unit cost_center GL_code profit_center count
NaN            a             12          12-09   09            2
NaN            b             23          23-87   87            2
NaN            c             34          34-76   76            1
groupby:

business_group business_unit cost_center GL_code profit_center count
NaN            a             12          12-09   09            1
NaN            a             12          12-09   09            1
NaN            b             23          23-87   87            1
NaN            b             23          23-87   87            1
NaN            b             34          34-76   76            1
group_df = df.groupby(['business_group', 'business_unit','cost_center','GL_code','profit_center'],
           as_index=False).count()
business_group business_unit cost_center GL_code profit_center count
NaN            a             12          12-09   09            2
NaN            b             23          23-87   87            2
NaN            c             34          34-76   76            1
预期结果:

business_group business_unit cost_center GL_code profit_center count
NaN            a             12          12-09   09            1
NaN            a             12          12-09   09            1
NaN            b             23          23-87   87            1
NaN            b             23          23-87   87            1
NaN            b             34          34-76   76            1
group_df = df.groupby(['business_group', 'business_unit','cost_center','GL_code','profit_center'],
           as_index=False).count()
business_group business_unit cost_center GL_code profit_center count
NaN            a             12          12-09   09            2
NaN            b             23          23-87   87            2
NaN            c             34          34-76   76            1
收到的结果

Empty DataFrame
Columns: [business_group, business_unit, cost_center, GL_code, profit_center, count]
Index: []

这是因为
business_group
中的
NaN
是空值,默认情况下
groupby()
将删除所有
NaN
值。您可以将
dropna=False
传递到
groupby()

输出:

   business_group business_unit  cost_center GL_code  profit_center  count
0             NaN             a           12   12-09              9      2
1             NaN             b           23   23-87             87      2
2             NaN             b           34   34-76             76      1

这是因为
business_group
中的
NaN
是空值,默认情况下
groupby()
将删除所有
NaN
值。您可以将
dropna=False
传递到
groupby()

输出:

   business_group business_unit  cost_center GL_code  profit_center  count
0             NaN             a           12   12-09              9      2
1             NaN             b           23   23-87             87      2
2             NaN             b           34   34-76             76      1