반응형
1. 데이터
독립변수는 키, 종속변수는 몸무게입니다. 10명의 데이터입니다.
#data
height=c(158, 163, 142, 198, 172, 155, 165, 168, 175, 182)
weight=c(53, 77, 58, 101, 73, 58, 78, 71, 68, 79)
2. 회귀분석
lm함수를 이용하여 아래와 같이 입력합니다. (종속변수~독립변수) 형식으로 입력합니다. 결과를 변수 result 에 저장합니다.
#linear regression
result=lm(weight~height)
3. 그래프
그래프를 그리면 아래와 같습니다.
plot(height,weight)
abline(result)
text(mean(height),mean(weight)*1.1,
paste("y=",round(result$coefficients[1],2),"x+", round( result$coefficients[2] ,2),
' ','adj_r^2=',round(summary(result)$adj.r.squared,2) ) ,col='red')
3. 결과
result 를 콘솔창에 입력하면 아래와 같이 출력됩니다.
> result
Call:
lm(formula = weight ~ height)
Coefficients:
(Intercept) height
-56.7204 0.7647
계산된 모델을 수식으로 표현하면 아래와 같습니다. x는 독립변수, y는 종속변수입니다.
$y=0.7647x-56.7204$
summary 함수를 이용하면 더 자세한 결과가 출력됩니다.
> summary(result)
Call:
lm(formula = weight ~ height)
Residuals:
Min 1Q Median 3Q Max
-11.106 -3.723 -1.282 6.261 9.071
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) -56.7204 27.8860 -2.034 0.07638 .
height 0.7647 0.1656 4.619 0.00171 **
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 7.658 on 8 degrees of freedom
Multiple R-squared: 0.7273, Adjusted R-squared: 0.6932
F-statistic: 21.34 on 1 and 8 DF, p-value: 0.001712
p 값이 여러개 나옵니다. (Intercept)에도 p값이 있고, height 에도 p값이 있고, 맨 아랫줄에도 p값이 있습니다.
Intercept 의 p값은 y절편에 대한 검정 결과입니다. y절편이 0인지 아닌지를 검정하며, p가 0.05보다 작을 경우 y절편이 0이 아닌 것입니다. height는 기울기에 대한 검정입니다. 기울기가 0인지 아닌지를 검정합니다.
마지막으로 F통계량은 추정된 회귀식의 유효성을 검정하는데 사용합니다. 기울기와 y절편이 0이 아닐지라도, 회귀식이 데이터를 잘 설명하지 못할 수도 있습니다.
반응형
'11. 회귀분석 > 선형회귀분석' 카테고리의 다른 글
[R통계] 회귀분석 결측치 처리에서 omit 과 exclude 의 차이 (0) | 2020.12.26 |
---|---|
[R통계] 회귀분석 표현식에서 . 의 의미 (0) | 2020.12.26 |
[R통계] 회귀분석에서 모형식을 입력하는 방법 (0) | 2020.12.26 |
댓글