python导入iris数据用随机森林预测后画AUC曲线代码
时间: 2023-06-04 12:03:51 浏览: 140
根据随机数组数据绘制一条曲线代码
以下是 Python 导入 iris 数据,用随机森林预测并画 AUC 曲线的代码,供参考:
```
from sklearn.datasets import load_iris
from sklearn.ensemble import RandomForestClassifier
from sklearn.model_selection import train_test_split
from sklearn.metrics import roc_curve, auc
import matplotlib.pyplot as plt
# 导入 iris 数据集
iris = load_iris()
X = iris.data
y = iris.target
# 分割数据集为训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3)
# 随机森林分类
rf = RandomForestClassifier(n_estimators=100)
rf.fit(X_train, y_train)
y_pred_prob = rf.predict_proba(X_test)[:, 1]
# 计算 AUC 值并画 ROC 曲线
fpr, tpr, thresholds = roc_curve(y_test, y_pred_prob)
roc_auc = auc(fpr, tpr)
plt.plot(fpr, tpr, lw=1, label='ROC (auc = %0.2f)' % (roc_auc))
plt.plot([0, 1], [0, 1], '--', color=(0.6, 0.6, 0.6), label='Luck')
plt.xlabel('False Positive Rate')
plt.ylabel('True Positive Rate')
plt.title('Receiver operating characteristic (ROC) curves')
plt.legend(loc="lower right")
plt.show()
```
注意:本代码仅供参考,请根据具体情况进行适当修改。
阅读全文