2017-09-08 10 views
-2

predict()関数を使用して線形回帰モデルをvaldidateしようとしています。私は校正と検証データセットを使っています。 predict()の出力としてR^2を得る方法はありますか?私はそれを私の校正セットの要約と比較したいと思います。predict()の決定係数

現時点では私はpredict()の出力を理解していません。私のコードの一部だ

model<-lm(y~x, data=daten) 
model 

model2<-predict(model,daten2) 
model2 

summary(model) 
Call: 
lm(formula = y ~ x, data = daten) 

Residuals: 
Min  1Q Median  3Q  Max 
-5.0347 -1.4576 -0.7656 1.4046 5.5095 

Coefficients: 
Estimate Std. Error t value Pr(>|t|)  
(Intercept) -44.03468 7.40057 -5.950 1.58e-05 *** 
x    0.39646 0.04928 8.045 3.38e-07 *** 
--- 
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 

Residual standard error: 2.728 on 17 degrees of freedom 
Multiple R-squared: 0.792, Adjusted R-squared: 0.7798 
F-statistic: 64.73 on 1 and 17 DF, p-value: 3.379e-07 

summary(model2) 
Min. 1st Qu. Median Mean 3rd Qu. Max. 
4.719 12.820 15.350 15.650 20.180 27.370 
+0

既知の応答変数は何ですか?つまり、 'dataen2'の' x'をモデルに送り、予測される 'y'を取得します。あなたのモデルがどれほど良いかをテストするには、比較するには 'y'を知らなければなりません。 – CPak

+0

いいえ、 'predict'はあなたのR2を与えることはできません。それはあなたに予測を与えます。 – Roland

+0

私の回帰を検証するにはどうすればよいですか?どの値を比較するか? – Andrea

答えて

0
RMSE <- function(fitted, true){ 
    sqrt(mean((fitted - true)^2)) 
} 

R2 <- function(fitted, true){ 
1 - (sum((true - fitted)^2)/sum((true - mean(true))^2)) 
} 

当てはめ値が真の値がdaten2

RMSE(model2, daten2$y) 

R2(model2, daten2$y) 

からresponce変数におそらくありながら、ポイントである、MODEL2にあります計算します予測値と一緒に真の結果を提供する必要がある適合メトリック"predict.lm"は予測値を提供するだけです

関連する問題