gpt4 book ai didi

python - 我可以使用 Pandas 的 pivot_table 聚合缺失值的列吗?

转载 作者:行者123 更新时间:2023-12-03 23:02:07 28 4
gpt4 key购买 nike

我可以使用pandas pivot_table 聚合包含缺失值的列并将这些缺失值作为单独的类别包含在内吗?

In:
df = pd.DataFrame({'a': pd.Series(['X', 'X', 'Y', 'Y', 'N', 'N'], dtype='category'),
'b': pd.Series([None, None, 'd', 'd', 'd', 'd'], dtype='category')})

Out:
a b
0 X NaN
1 X NaN
2 Y d
3 Y d
4 N d
5 N d

In:
df.groupby('a')['b'].apply(lambda x: x.value_counts(dropna=False)).unstack(1)

Out:
NaN d
a
N NaN 2.0
X 2.0 0.0
Y NaN 2.0
我可以使用 pandas pivot_table 获得相同的结果吗?如果是比如何?谢谢。

最佳答案

不知为何,dtype="category"不适用于 pivot_table()计数时NaN值。将它们转换为常规字符串可启用常规 pivot_table(aggfunc="size") .

df.astype(str).pivot_table(index="a", columns="b", aggfunc="size")    
结果
b    d  nan
a
N 2.0 NaN
X NaN 2.0
Y 2.0 NaN
可以选择做 .fillna(0)替换 nan s 与 0

关于python - 我可以使用 Pandas 的 pivot_table 聚合缺失值的列吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64976121/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com