首页 > 解决方案 > 整个数据框上的 pandas 交叉表的列联表

问题描述

我想在熊猫中创建一个精简的列联表。因此,我从熊猫交叉表开始,基于示例中某个列的聚类,决策列是“D”,例如

df = pd.DataFrame(np.random.randint(0,2,size=(4, 3)), columns=list('ABD'))
df

在此处输入图像描述

如果我想做交叉表,我通过这个命令:

pd.crosstab([df.A,df.B], df.D,  margins=True)

返回频率表:

在此处输入图像描述

这对我的情况有点不方便。

我想在整个数据框上执行此操作,而不是像我传递列列表的示例中那样逐列。此外,我希望它以更简洁的方式返回它,而不是超大频率,如下所示:

在此处输入图像描述

知道如何到达那里吗?

谢谢

标签: pythonpandasstatisticscrosstab

解决方案


推荐阅读