gpt4 book ai didi

python - sklearn r2_score 和 python stats lineregress 函数给出了非常不同的 R^2 值。为什么?

转载 作者:太空宇宙 更新时间:2023-11-04 00:53:23 25 4
gpt4 key购买 nike

我使用相同的数据但使用不同的 Python 库来计算确定系数 R^2。使用统计库和 sklearn 会产生不同的结果。

这种行为背后的原因是什么?

# Using stats lineregress
slope, intercept, r_value, p_value, std_err = stats.linregress(x, y)
print r_value**2

0.956590054918

# Using sklearn
from sklearn.metrics import r2_score
print r2_score(x, y)

0.603933484937

最佳答案

linregress返回的r_valuexy的相关系数r em>。一般来说,平方相关系数 与决定系数 不同。

决定系数告诉您模型与数据的拟合程度。因此,r2_score 认为 x 是真实值,y 是模型预测的值。

如果您的 xy 是真实数据和预测数据, 就是您想要的。但是,如果两者都是测量数据,您很可能需要

有关 correlation coefficient 的详细信息和 coefficient of determination可以在维基百科上找到。

关于python - sklearn r2_score 和 python stats lineregress 函数给出了非常不同的 R^2 值。为什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36153569/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com