R 회귀분석

2024. 9. 5. 12:56R Python GIS

R의 기본 데이터인 mtcars에서 연속형인 두 데이터인 연비(mpg)와 마력(hp)의 관계를 회귀분석을 이용해 알아본다.

fit<-lm(mtcars$mpg~mtcars$hp)
plot(mtcars$hp,mtcars$mpg)
abline(fit)

 

 

세로 축을 연비로, 가로 축을 마력으로 각 차량의 데이터를 나타낸 그래프에서 각 점과의 제곱(부호를 생각하지 않기 위해)의 거리가 최소인 직선을 하나 긋는다. 이를 회귀 직선이라고 한다.

summary(fit)

 

 

Residuals: 잔차에 대한 기술통계량. 최솟값, 1분위수, 중앙값, 3분위수, 최댓값이 나타나있다.

 

Coefficients

(Intercept): 회귀직선의 y절편. 마력(독립변수)이 0일 때 연비(종속변수)에 얼마나 영향을 미치는지를 나타낸 것.

Estimate: 추정값. 마력(독립변수)이 연비(종속변수)에 미치는 영향. 회귀직선의 기울기. 마력이 1 증가할 때 연비가 대충 0.068 정도 감소한다는 뜻.

Std. Error: 표준오차. 특정 회귀 계수(즉, 독립 변수의 기울기 또는 절편)에 대한 추정치의 불확실성. 잔차의 분산을 독립변수의 분산으로 나눈 값의 제곱근.

t value: 검정통계량. 표준 오차에 대한 추정치의 비율. 스튜던트의 t-분포를 따른다.

Pr(>|t|): 스튜던트의 t-분포에서 t값 오른쪽 꼬리의 넓이. 즉 t-값보다 더 극단적인 값이 나와 귀무가설(독립변수가 종속변수에 영향을 미치지 않는다.)가 채택될 확률이다. 즉 이 값이 작을수록 해당 회귀 계수가 통계적으로 유의미하다고 할 수 있다.

 

Residual standard error: 잔차표준오차. 회귀 직선과 각 점들이 떨어져 있는 거리의 제곱의 합(잔차제곱합, RSS)을 데이터 포인트 개수에서 회귀계수(기울기와 절편 2개)의 개수를 뺀(n-p)로 나누어 제곱근을 취한 것. 이 값이 작을수록 회귀 직선이 데이터 점들에 더 잘 맞는다고 볼 수 있다.

Multiple R-squared: 모델이 전체 데이터의 변동성(즉, 연비의 변동성)을 얼마나 잘 설명하는지를 나타내는 지표. 값이 0에 가까우면 모델이 데이터를 잘 설명하지 못하고, 1에 가까우면 잘 설명하고 있다는 뜻.  R-sqaured는 0.3 미만이면 설명력이 떨어진다고 평가되고, 0.7 이상이면  보통 모델이 데이터를 잘 설명한다고 평가하지만, 절대적인 기준은 아니다.

Adjusted R-squared: 설명 변수가 많아질 때 과적합을 방지하기 위해 조정된 결정 계수. 모델의 실제 성능을 더 정확히 반영. 0.6 이상이면 적절한 설명력을 가진다고 평가할 수 있으나 절대적인 기준은 아니다.

F-statistic: 모델 전체의 유의미성을 테스트하는 지표. 모델의 계수가 모두 0이라는 가설을 테스트하며, F-값이 크면 이 가설을 기각하고, 모델이 통계적으로 유의미하다고 할 수 있다. 두 개의 카이제곱(Chi-squared) 분포를 서로 나눈 값으로 계산되는 F-분포를 따른다.

p-value: 상기한 f-분포의 꼬리의 넓이.

 

t-검정 통계량과 f-통계량의 p값은 0.05 미만일 경우, 즉 95% 확률로 귀무가설이 기각될 때 통계적으로 유의미하다고 본다.

'R Python GIS' 카테고리의 다른 글

R 벡터 형상 변환  (0) 2024.08.17
R 벡터 단순화 작업  (0) 2024.08.17
R 벡터 속성 작업  (0) 2024.08.16
R 집단별 요약  (0) 2024.08.13
지오코딩으로 주소를 좌표로 바꾸기 (api 3종 비교)  (0) 2024.08.07