R의 lm() 함수에서 rmse를 추출하는 방법


다음 구문을 사용하여 R에서 lm() 함수의 RMSE(평균 제곱근 오차)를 추출할 수 있습니다.

 sqrt(mean(model$residuals^2))

다음 예에서는 실제로 이 구문을 사용하는 방법을 보여줍니다.

관련 항목: RMSE(제곱평균제곱근 오차)를 해석하는 방법

예: R의 lm()에서 RMSE 추출

R에 다음과 같은 다중 선형 회귀 모델을 적합하다고 가정합니다.

 #create data frame
df <- data. frame (rating=c(67, 75, 79, 85, 90, 96, 97),
                 points=c(8, 12, 16, 15, 22, 28, 24),
                 assists=c(4, 6, 6, 5, 3, 8, 7),
                 rebounds=c(1, 4, 3, 3, 2, 6, 7))

#fit multiple linear regression model
model <- lm(rating ~ points + assists + rebounds, data=df)

summary() 함수를 사용하여 회귀 모델의 전체 요약을 표시할 수 있습니다.

 #view model summary
summary(model)

Call:
lm(formula = rating ~ points + assists + rebounds, data = df)

Residuals:
      1 2 3 4 5 6 7 
-1.5902 -1.7181 0.2413 4.8597 -1.0201 -0.6082 -0.1644 

Coefficients:
            Estimate Std. Error t value Pr(>|t|)   
(Intercept) 66.4355 6.6932 9.926 0.00218 **
points 1.2152 0.2788 4.359 0.02232 * 
assists -2.5968 1.6263 -1.597 0.20860   
rebounds 2.8202 1.6118 1.750 0.17847   
---
Significant. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 3.193 on 3 degrees of freedom
Multiple R-squared: 0.9589, Adjusted R-squared: 0.9179 
F-statistic: 23.35 on 3 and 3 DF, p-value: 0.01396

모델의 RMSE(평균 제곱근 오차)만 추출하려면 다음 구문을 사용할 수 있습니다.

 #extract RMSE of regression model
sqrt(mean(model$residuals^2))

[1] 2.090564

모델의 RMSE는 2.090564 입니다.

이는 모델의 예측값과 데이터세트의 실제값 사이의 평균 거리를 나타냅니다.

RMSE가 낮을수록 특정 모델이 데이터 세트에 더 잘 “적합”될 수 있다는 점에 유의하세요.

여러 가지 회귀 모델을 비교할 때 RMSE가 가장 낮은 모델이 데이터 세트에 가장 잘 맞는 모델로 간주됩니다.

추가 리소스

다음 튜토리얼에서는 R에서 다른 일반적인 작업을 수행하는 방법을 설명합니다.

R에서 단순 선형 회귀를 수행하는 방법
R에서 다중 선형 회귀를 수행하는 방법
R에서 잔차 플롯을 만드는 방법

의견을 추가하다

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다