R에서 sst, ssr 및 sse를 계산하는 방법


우리는 회귀선 이 실제로 데이터 세트에 얼마나 잘 맞는지 측정하기 위해 세 가지 다른 제곱합 값을 사용하는 경우가 많습니다.

1. 총 제곱합(SST) – 개별 데이터 포인트(y i )와 응답 변수의 평균( y ) 간의 차이의 제곱합입니다.

  • SST = Σ(y iy ) 2

2. SSR(제곱합 회귀) – 예측된 데이터 포인트(ŷ i )와 응답 변수의 평균( y ) 간의 차이의 제곱합입니다.

  • SSR = Σ(ŷ iy ) 2

3. 제곱합 오류(SSE) – 예측된 데이터 포인트(ŷ i )와 관찰된 데이터 포인트(y i ) 간의 차이의 제곱의 합입니다.

  • SSE = Σ(ŷ i – y i ) 2

다음 단계별 예는 R의 특정 회귀 모델에 대해 이러한 각 측정항목을 계산하는 방법을 보여줍니다.

1단계: 데이터 생성

먼저, 특정 대학에서 20명의 학생들을 대상으로 공부한 시간과 시험 점수를 포함하는 데이터세트를 만들어 보겠습니다.

 #create data frame
df <- data. frame (hours=c(1, 1, 1, 2, 2, 2, 2, 2, 3, 3,
                         3, 4, 4, 4, 5, 5, 6, 7, 7, 8),
                 score=c(68, 76, 74, 80, 76, 78, 81, 84, 86, 83,
                         88, 85, 89, 94, 93, 94, 96, 89, 92, 97))

#view first six rows of data frame
head(df)

  hours score
1 1 68
2 1 76
3 1 74
4 2 80
5 2 76
6 2 78

2단계: 회귀 모델 적합

다음으로, lm() 함수를 사용하여 점수를 응답 변수 로, 시간을 예측 변수로 사용하여 단순 선형 회귀 모델을 피팅합니다.

 #fit regression model
model <- lm(score ~ hours, data = df)

#view model summary
summary(model)

Call:
lm(formula = score ~ hours, data = df)

Residuals:
    Min 1Q Median 3Q Max 
-8.6970 -2.5156 -0.0737 3.1100 7.5495 

Coefficients:
            Estimate Std. Error t value Pr(>|t|)    
(Intercept) 73.4459 1.9147 38.360 < 2nd-16 ***
hours 3.2512 0.4603 7.063 1.38e-06 ***
---
Significant. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 4.289 on 18 degrees of freedom
Multiple R-squared: 0.7348, Adjusted R-squared: 0.7201 
F-statistic: 49.88 on 1 and 18 DF, p-value: 1.378e-06

3단계: SST, SSR, SSE 계산

다음 구문을 사용하여 SST, SSR 및 SSE를 계산할 수 있습니다.

 #find sse
sse <- sum (( fitted (model) - df$score)^2)
sse

[1] 331.0749

#find ssr
ssr <- sum (( fitted (model) - mean (df$score))^2)
ssr

[1] 917.4751

#find sst
sst <- ssr + sse
sst

[1] 1248.55

측정항목은 다음과 같습니다.

  • 총 제곱합(SST): 1248.55
  • SSR(제곱합 회귀): 917.4751
  • 제곱합 오류(SSE): 331.0749

SST = SSR + SSE를 확인할 수 있습니다.

  • SST = SSR + SSE
  • 1248.55 = 917.4751 + 331.0749

회귀 모델의 R 제곱을 수동으로 계산할 수도 있습니다.

  • R 제곱 = SSR / SST
  • R 제곱 = 917.4751 / 1248.55
  • R 제곱 = 0.7348

이는 시험 점수 변동의 73.48%가 공부 시간에 의해 설명될 수 있음을 말해줍니다.

추가 리소스

다음 계산기를 사용하여 단순 선형 회귀선에 대한 SST, SSR 및 SSE를 자동으로 계산할 수 있습니다.

SST 계산기
RSS 계산기
ESS 계산기

의견을 추가하다

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