python绘制roc曲线
时间: 2023-09-21 22:02:48 浏览: 96
ROC曲线绘制
好的,关于Python绘制ROC曲线的问题,下面是代码示例:
```python
# 导入必要的库
import numpy as np
import matplotlib.pyplot as plt
# 初始化数据
# 假设这里的y_true和y_score都是一维数组,分别表示真实标签和预测得分
y_true = np.array([0, 0, 1, 1, 0, 1, 1, 0])
y_score = np.array([0.1, 0.4, 0.35, 0.8, 0.2, 0.6, 0.7, 0.3])
# 求出不同阈值下的false positive rate和true positive rate
fpr, tpr, thresholds = metrics.roc_curve(y_true, y_score)
# 计算ROC曲线下的面积
roc_auc = metrics.auc(fpr, tpr)
# 绘制ROC曲线
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 curve')
plt.legend(loc="lower right")
plt.show()
```
代码中通过导入`numpy`和`matplotlib`库进行ROC曲线的绘制。其中假设`y_true`和`y_score`是一组已知数据,分别表示真实标签和预测得分。接下来,通过`metrics`库的`roc_curve`函数求出不同阈值下的false positive rate和true positive rate,并计算ROC曲线下的面积。最后通过`plot`函数绘制ROC曲线。
阅读全文