plot_roc_curve引用不上的问题

plot_roc_curve引用不上的问题


前言

提示:这里可以添加本文要记录的大概内容:

sklearn引用的带交叉验证的roc工作曲线的时候,总是提示无法引用,没有这个function,经过官网查询,最后找的原因,是我的版本1.5。这个版本的用法已经不是以下这个了。此版本为sklearn的0.24版本。

一、原因

1.原代码

代码如下(示例):

from sklearn.metrics import plot_roc_curve


for i, (train, test) in enumerate(cv.split(X, y)):
    classifier.fit(X[train], y[train])
    viz = plot_roc_curve(classifier, X[test], y[test],
                         name='ROC fold {}'.format(i),
                         alpha=0.3, lw=1, ax=ax)

这部分代码是引用的代码部分,这里viz用的是plot_roc_curve方法,但是我发现不能引用,显示metrics库中没有plot_roc_curve的function

2.解决方法

代码如下(示例):

from sklearn.metrics import RocCurveDisplay

fig, ax = plt.subplots(figsize=(10, 10))
for fold, (train, test) in enumerate(kfold.split(X, y)):
    rf_model.fit(X[train], y[train])
    viz = RocCurveDisplay.from_estimator(
        rf_model,
        X[test],
        y[test],
        name=f"ROC fold {fold}",
        alpha=0.3,
        lw=1,
        ax=ax,
        plot_chance_level=(fold == n_splits - 1),
    )
    interp_tpr = np.interp(mean_fpr, viz.fpr, viz.tpr)
    interp_tpr[0] = 0.0
    tprs.append(interp_tpr)
    aucs.append(viz.roc_auc)

此处要查询一下sklearn的版本,1.5版本已经对这部分进行了更新,改用RocCurveDisplay.from_estimator,引用库为from sklearn.metrics import RocCurveDisplay


总结

sklearn1.5.0版本带交叉验证roc曲线代码网站:https://scikit-learn.org/stable/auto_examples/model_selection/plot_roc_crossval.html#sphx-glr-auto-examples-model-selection-plot-roc-crossval-py

  • 7
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值