如何使用熊猫制作自定义混淆矩阵

时间:2019-12-11 12:20:58

标签: python pandas

通过在数据框上使用.value_counts(),我得到了一系列如下:

样本数据:

In_A_Not_In_B    116
In_C_Not_In_B    104
In_A_Not_In_C    100
In_C_Not_In_A    85

我需要根据上述数据创建一个矩阵,如下所示。必须从列值中获取索引名称。

预期输出:

      NOT IN
      A  B  C
   A NA 116 100
IN C 85 104 NA

到目前为止,我还没有尝试过.pivot_table().MultiIndex()

1 个答案:

答案 0 :(得分:4)

假设您的value_counts的结果存储在变量df中,然后:

df = df.reset_index()
df['In'] = df['index'].str[3]
df['Not In'] = df['index'].str[-1]
df.pivot(index='In', columns='Not In', values=0)
# Not In     A      B      C
# In                        
# A        NaN  116.0  100.0
# C       85.0  104.0    NaN