在Python熊猫中选择列联表的一部分

时间:2019-11-16 02:19:57

标签: python pandas

问题

我正在一个项目中尝试检测数据集中存在的性别歧视与性别之间的关联。数据集的一部分看起来像

    male  female  sexism?
0      0       1        1
1      1       1        0
2      0       1        1
3      1       1        1
4      1       1        0
..   ...     ...      ...

现在我想获取该数据集的统计数据,看起来像

       sexism   non-sexism
male   xxx      xxx
female xxx      xxx

据我所知,我可以使用pd.crosstab做类似的事情(请参见下面的代码块),但这并不像我预期的那么简单

pd.crosstab([[df["male"], df["sexism?"]], [[df["female"], df["sexism?"]])

有人可以帮我吗?预先谢谢你!

1 个答案:

答案 0 :(得分:1)

我认为您需要看一下百分比

df.groupby('sexism?').mean().T
Out[19]: 
sexism?    0         1
male     1.0  0.333333
female   1.0  1.000000

更新

df.groupby('sexism?').sum().T
Out[9]: 
sexism?  0  1
male     2  1
female   2  3