要绘制AUC曲线,首先需要计算出模型的预测概率值和真实标签,并使用sklearn中的roc_curve函数来计算出ROC曲线的数据。然后可以使用matplotlib来绘制AUC曲线。
以下是一个示例代码:
import pandas as pd import matplotlib.pyplot as plt from sklearn.metrics import roc_curve, auc # 假设预测概率值和真实标签分别存储在DataFrame中的两列 df = pd.DataFrame({ 'true_labels': true_labels, 'predicted_probabilities': predicted_probabilities }) # 计算ROC曲线数据 fpr, tpr, thresholds = roc_curve(df['true_labels'], df['predicted_probabilities']) roc_auc = auc(fpr, tpr) # 绘制AUC曲线 plt.figure() plt.plot(fpr, tpr, color='darkorange', lw=2, label='ROC curve (area = %0.2f)' % roc_auc) plt.plot([0, 1], [0, 1], color='navy', lw=2, linestyle='--') plt.xlim([0.0, 1.0]) plt.ylim([0.0, 1.05]) plt.xlabel('False Positive Rate') plt.ylabel('True Positive Rate') plt.title('Receiver Operating Characteristic') plt.legend(loc="lower right") plt.show()
以上代码中,true_labels代表真实标签,predicted_probabilities代表模型的预测概率值。通过计算出fpr, tpr和thresholds,然后使用matplotlib绘制AUC曲线。