我有一个这样的数据帧(布尔值(
a b c d count
1 0 1 0 196
0 1 0 1 110
0 1 0 0 17
0 0 1 0 10
0 0 0 0 9
正如你所能,某人可以是a和c//或b或d///或只有c我想构建一个方形矩阵数据帧,其中
a b
a 0 0
b 0 17
c 196 10
d 0 110
我可以买这样的吗?我试过
result = df.merge(df, on=['ID']
count = pd.crosstab(df[columns_x],df[columns_y])
但它没有得到我想要的
注意主数据帧如下:
a b c d
Yes No Yes No
No Yes No Yes
No Yes No No
No No Yes No
No No No No
我只做了一个点积就得到了答案。
df_transpose = df.transpose()
count = df_transpose.dot(df)
>
a b c d
a 222 5 8 1
b 5 154 14 22
c 8 14 34 6
d 1 22 6 29