可透视(2 级)NaN 未显示
Pivottable (2 levels) NaN not showing
我有一个数据框,它是我从另一个数据框创建的:
df_exp_fix = df_aus[df_aus['CATEGORY'] == "Fixkosten"]
当我显示 df_exp_fix 时,我得到:
MONTHYEAR
Comment
LEVEL2
LEVEL3
AMOUNT
0
01.01.2022
bla
Lebensmittel
Metro
10
1
01.02.2022
bla
Taschengeld
NaN
10
接下来我做
table_exp_fix = df_exp_fix.pivot_table(values='AMOUNT', index=['LEVEL2', 'LEVEL3'],
columns=['MONTHYEAR'], aggfunc=np.sum, margins=True)
但是没有显示“Taschengeld”这一行?
如果我只在 LEVEL2
上聚合,那么所有的总和都不一样
我试过 dropna.... 和其他参数,但没有显示
有什么帮助吗?
这是因为您的索引列中有一个 NaN
值。
尝试:
df_exp_fix['LEVEL3'].fillna('Unknown', inplace=True)
如果您在 LEVEL2 中也有(可能)NaN
,请将它们也替换掉。
此外,要从输出中删除 NaN
值,请添加 fill_value
参数,如下所示:
table_exp_fix = df.pivot_table(values='AMOUNT', index=['LEVEL2', 'LEVEL3'],
columns=['MONTHYEAR'], aggfunc=np.sum, margins=True, fill_value=0)
输出:
MONTHYEAR 01.01.2022 01.02.2022 All
LEVEL2 LEVEL3
Lebensmittel Metro 10 0 10
Taschengeld Unknown 0 10 10
All 10 10 20
我有一个数据框,它是我从另一个数据框创建的:
df_exp_fix = df_aus[df_aus['CATEGORY'] == "Fixkosten"]
当我显示 df_exp_fix 时,我得到:
MONTHYEAR | Comment | LEVEL2 | LEVEL3 | AMOUNT | |
---|---|---|---|---|---|
0 | 01.01.2022 | bla | Lebensmittel | Metro | 10 |
1 | 01.02.2022 | bla | Taschengeld | NaN | 10 |
接下来我做
table_exp_fix = df_exp_fix.pivot_table(values='AMOUNT', index=['LEVEL2', 'LEVEL3'],
columns=['MONTHYEAR'], aggfunc=np.sum, margins=True)
但是没有显示“Taschengeld”这一行? 如果我只在 LEVEL2
上聚合,那么所有的总和都不一样我试过 dropna.... 和其他参数,但没有显示
有什么帮助吗?
这是因为您的索引列中有一个 NaN
值。
尝试:
df_exp_fix['LEVEL3'].fillna('Unknown', inplace=True)
如果您在 LEVEL2 中也有(可能)NaN
,请将它们也替换掉。
此外,要从输出中删除 NaN
值,请添加 fill_value
参数,如下所示:
table_exp_fix = df.pivot_table(values='AMOUNT', index=['LEVEL2', 'LEVEL3'],
columns=['MONTHYEAR'], aggfunc=np.sum, margins=True, fill_value=0)
输出:
MONTHYEAR 01.01.2022 01.02.2022 All
LEVEL2 LEVEL3
Lebensmittel Metro 10 0 10
Taschengeld Unknown 0 10 10
All 10 10 20