嗨,我有两个数字列表,我想从一个正规的线性回归得到R^2。我想这个问题已经被贴了很多,但我只是找不到这个地方。
我的列表:
my_y = [2,5,6,10]
my_x = [19,23,22,30]
我试图将其更改为numpy数组,然后使用sklearn进行回归并获得所需的内容,但我没有成功。我使用了以下代码:
from sklearn.linear_model import LinearRegression
import numpy as np
my_y = np.array([2,5,6,10]).reshape(1, -1)
my_x = np.array([19,23,22,30]).reshape(1,-1)
lm = LinearRegression()
result = lm.score(my_x, my_y)
print(result)
有没有人能快速地从这两个变量之间的线性回归得到R^2?
此回归的预期输出为:R^2=0.930241
最佳答案
尝试:
import scipy
slope, intercept, r_value, p_value, std_err = scipy.stats.linregress(my_x, my_y)
print(r_value**2)
你会得到:
0.9302407516147975
关于python - python中2个列表的线性回归,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55713811/