두 개의 열 [ "A", "B"] 데이터베이스가 있습니다. 여기서 "A"는 입력 변수이고 "B"는 대상 변수입니다. 모든 값은 정수입니다.
내 코드 :
X.shape
>>(2540, 1)
y.shape
>>(2540, 1)
from sklearn.preprocessing import StandardScaler
scaler = StandardScaler()
scaler.fit(X)
X = scaler.transform(X)
import numpy as np
from sklearn.model_selection import train_test_split
np.random.rand(4)
X_train, X_test, y_train, y_test = train_test_split(X,y,test_size = 0.2)
Sklearn의 선형 회귀
regr = LinearRegression(fit_intercept=True)
regr.fit(X_train, y_train)
print ('Coefficients: ', regr.coef_)
print ('Intercept: ',regr.intercept_)
>>Coefficients: [[43.95569425]]
>>Intercept: [100.68681298]
0.93의 R2 값을 얻었습니다.
X_train의 마지막 레코드는 3687이고 해당 y_train 값은 212.220001입니다.
마지막 레코드를 예측에 사용했습니다.
regr.predict([[3687]] )
>>array([161825.22279211])
나는 무슨 일이 일어나고 있는지 이해하지 못합니다. 예상 값이 약 212가 될 것이라고 제외했습니다.
하지만 예측값은 161825입니다.
이유가 무엇인지 설명해 주시겠습니까?
회귀 분석에 적용하기 전에 스케일러를 통해 테스트 데이터를 전달해야 할 수도 있습니다. 시험reg.predict(scaler.transform([3687])
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다