首页 > 解决方案 > 如何使用 scikit 计算调整后的 R2 值

问题描述

我有一个数据集,我必须为其开发各种模型并计算所有模型的调整后 R2 值。

    cv = KFold(n_splits=5,shuffle=True,random_state=45)
    r2 = make_scorer(r2_score)
    r2_val_score = cross_val_score(clf, x, y, cv=cv,scoring=r2)
    scores=[r2_val_score.mean()]
    return scores

我已经使用上面的代码来计算每个模型的 R2 值。但我更想知道每个模型调整后的 R2 值 python 中是否有任何包可以完成这项工作?

我会感谢你的帮助。

标签: pythonscikit-learnregression

解决方案


您可以使用此处给出的简单公式从 R2 计算调整后的 R2 。

Adj r2 = 1-(1-R2)*(n-1)/(n-p-1)

调整后的 R2 也需要独立变量的数量。这就是为什么它不会使用此函数计算的原因。


推荐阅读