python pandas - 转换 table

python pandas - transforming table

我想转换一个 table 看起来类似于下面的:

X|Y|Z|
1|2|3|
3|5|2|
4|2|1|

我想要达到的结果应该是这样的:

col|1|2|3|4|5|
X |1|0|1|0|0|
Y |0|2|0|0|1|
Z |1|1|1|0|0|

因此,转换后新列应该是之前 table 中的唯一值,新值应该用 count/appearance 填充,索引中应该是旧列名。

我卡住了,我不知道如何处理,因为我是 python 的新手,所以在此先感谢您的支持。

此致,

guddy_7

applyvalue_counts结合使用,将缺失值替换为0并转置为T:

df = df.apply(pd.value_counts).fillna(0).astype(int).T
print (df)
   1  2  3  4  5
X  1  0  1  1  0
Y  0  2  0  0  1
Z  1  1  1  0  0