我正在尝试使用下面的公式计算R square的系数。这是一种统计方法,用于确定我们的回归方程与所提供数据的拟合程度。
R^2 = { ( 1 / N ) * Σ [ (xi - x) * (yi - y) ] / (σx * σy ) }^2
用它来插入上面的最后一个等式
σx = sqrt [ Σ ( xi - x )2 / N ]
σy = sqrt [ Σ ( yi - y )2 / N ]
xi是数据集中的x值
yi是数据集中y的值
x是x数据的平均值
y是y数据的平均值
n是数据集中的数据点数
σx是x值的标准偏差
σy是y值的标准偏差
以下是我的代码。我得到1589,当我相信它应该在0到1左右时。也许我的代码在某处不正确。不要担心xi和yi。
sum3 = (x[i] - xaverage)
sum4 = (y[i] - yaverage)
sum5 = math.sqrt(sum3 * sum3)
sum6 = math.sqrt(sum4 * sum4)
var1 = (1 / len(x and y)* (sum3) * (sum4))
var2 = sum5 / len(x and y)
var3 = sum6 / len(x and y)
var4 = var2 * var3 * var2 * var3
Rsquare = var1 / var4
print("This is the coefficient of R square:", Rsquare)
感谢您的帮助!