混淆矩阵无法正确显示

数据挖掘 Python 逻辑回归 混淆矩阵 蟒蛇
2022-02-15 10:52:35

我正在尝试confusion matrix使用数据集绘制Logistic Regression一个multi-class

但问题是当我绘制confusion matrix它时它只绘制一个confusion matrix用于二进制分类的。

这是我正在绘制它的地方。

%matplotlib inline
import matplotlib.pyplot as plt 
import pandas as pd

dataframe = pd.read_csv("WA_Fn-UseC_-HR-Employee-Attrition.csv")
from sklearn.linear_model import LogisticRegression

LRModel = LogisticRegression(C=100, max_iter=5500)

LRModel.fit(X_train, y_train)
predicted_values_ = LRModel.predict(X_test)
from sklearn.metrics import confusion_matrix 

cm = confusion_matrix(y_test, predicted_values_)

misclassified = (y_test != predicted_values_).sum()
misclassified
import seaborn as sn

# plt.figure()
sn.heatmap(cm, annot=True)
plt.xlabel("Predicted")
plt.ylabel("Actual")

我得到这个矩阵,如下所示。

在此处输入图像描述

有人可以告诉我我在哪里做错了吗?

这是我在多类场景中使用逻辑回归的地方

1个回答

请检查 y_test 有多少类。

如果 Y 是数组-

np.unique(y_test)

如果 y 是 DataFrame 列,

y_test.unique()

看起来 y_test 只有 2 个类。

据我所知 HR-Employee-Attrition.csv 数据集只有 2 个类。