熊猫:转换数据框以显示原始数据框中是否存在值的组合

熊猫:转换数据框以显示原始数据框中是否存在值的组合,第1张

熊猫:转换数据框以显示原始数据框中是否存在值的组合

使用

get_dummies
max

df = pd.get_dummies(df.set_index('Col 1')['Col 2'], dtype=bool).rename_axis(None).max(level=0)print (df)       1     2      3A  False  True   TrueB   True  True  False

或者,如果可能的话,不要在列中丢失任何值,

Col2
然后
Dataframe.pivot
与一起使用
Dataframe.notna
,以删除索引和列名,请使用
Dataframe.rename_axis

df = df.pivot('Col 1', 'Col 2', 'Col 1').notna().rename_axis(index=None, columns=None)print (df)       1     2      3A  False  True   TrueB   True  True  False

备选方案可能是重复项,但

pivot
失败了:

df = (df.pivot_table(index='Col 1', columns='Col 2', values='Col 1', aggfunc='size')        .notna()        .rename_axis(index=None, columns=None))print (df)       1     2      3A  False  True   TrueB   True  True  False

或评论中的解决方案:

df = (pd.crosstab(df['Col 1'], df['Col 2'])        .gt(0)        .rename_axis(index=None, columns=None))


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5648429.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存