힙포의 기록공장
[R] 중회귀분석 모형(1) 유의한 변수 찾기, 잔차의 산점도 파악 본문
공부 기록/R

[R] 중회귀분석 모형(1) 유의한 변수 찾기, 잔차의 산점도 파악

힙포 2022. 11. 16.
728x90
반응형

 

 

 

중회귀분석모형을 적용한 뒤 결과를 해석하는 방법에 대한 글을 쓰려 한다.

우선 독립변수 즉, 공변량이 여러개인 중회귀모형(다중회귀모형)을 r에서 어떻게 적용할 수 있는지를 일반화하면 다음과 같다.

모형명<-lm(종속변수~ 독립변수1+독립변수2..., data=데이터자료명)

 

 

 

일반화한 모형은 저렇지만 이해를 돕기 위해 데이터를 불러와 예제를 풀어보려한다.

library(faraway)
data(longley)
head(longley, 10)
> head(longley, 10)

GNP.deflator     GNP Unemployed Armed.Forces Population Year Employed
1947         83.0 234.289      235.6        159.0    107.608 1947   60.323
1948         88.5 259.426      232.5        145.6    108.632 1948   61.122
1949         88.2 258.054      368.2        161.6    109.773 1949   60.171
1950         89.5 284.599      335.1        165.0    110.929 1950   61.187
1951         96.2 328.975      209.9        309.9    112.075 1951   63.221
1952         98.1 346.999      193.2        359.4    113.270 1952   63.639
1953         99.0 365.385      187.0        354.7    115.094 1953   64.989
1954        100.0 363.112      357.8        335.0    116.219 1954   63.761
1955        101.2 397.469      290.4        304.8    117.388 1955   66.019
1956        104.6 419.180      282.2        285.7    118.734 1956   67.857

head함수는 불러온 데이터의 자료 몇 개를 보여주는 함수이다.

head(데이터, 불러올 갯수)에서 10개를 불러왔으니 자료도 10개를 보여주고 있고, 보여주는 결과를 통해서 Employed,  GNP.deflator, GNP, Unemployed, Armed.Forces, Population, Year의 자료가 있다는 것을 알 수 있다.

 

 

 

fit1 <- lm(Employed ~ GNP.deflator+GNP+Unemployed+Armed.Forces+Population+Year,data=longley) 
summary(fit1)

fit1 모형으로 회귀분석을 하였다. 앞서 말했듯이 회귀분석 모형을 적용하려면 lm함수를 쓰면 된다.

종속변수는 Employed이고, 나머지 6개의 변수를 공변량으로 두었다.

 

 

> summary(fit1)

Call:
lm(formula = Employed ~ GNP.deflator + GNP + Unemployed + Armed.Forces + 
    Population + Year, data = longley)

Residuals:
     Min       1Q   Median       3Q      Max 
-0.41011 -0.15767 -0.02816  0.10155  0.45539 

Coefficients:
               Estimate Std. Error t value Pr(>|t|)    
(Intercept)  -3.482e+03  8.904e+02  -3.911 0.003560 ** 
GNP.deflator  1.506e-02  8.492e-02   0.177 0.863141    
GNP          -3.582e-02  3.349e-02  -1.070 0.312681    
Unemployed   -2.020e-02  4.884e-03  -4.136 0.002535 ** 
Armed.Forces -1.033e-02  2.143e-03  -4.822 0.000944 ***
Population   -5.110e-02  2.261e-01  -0.226 0.826212    
Year          1.829e+00  4.555e-01   4.016 0.003037 ** 
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 0.3049 on 9 degrees of freedom
Multiple R-squared:  0.9955,	Adjusted R-squared:  0.9925 
F-statistic: 330.3 on 6 and 9 DF,  p-value: 4.984e-10

summary함수는 적용한 회귀모형의 결과를 보여주는 함수이다.

 

결과를 해석하기 위해서는 Pr(>|t|) 이라고 적힌 부분을 보면 되는데 이 값들은 p-value라고 하는 p값이다.

p값이 0.05이내라면 유의수준 5%하에서 해당 변수(공변량)가 유의하다고 볼 수 있다.

즉, 𝐻0: β𝑖 = 0 기각이라고 할 수 있다.  𝐻0: β𝑖 = 0 기각이라면 β𝑖 = 0 가 아니라는 의미이므로 해당 변수의 값이 0이 아니고 유의한 값을 가진다고 해석할 수 있다.

 

위 데이터에서 p-value가 0.05이내인 변수는 Unemployed, Armed.Forces, Year이다따라서 유의한 변수는 Unemployed, Armed.Forces, Year이다.

 

 

 

 

 


 

 

회귀분석모형에서는 오차의 독립성과 등분산성을 가정하는데, 이 가정이 위배된 경우 잔차의 산점도 플랏이 특정한 패턴을 보이며 나타난다. 즉, 잔차의 산점도가 패턴이 없이 마구잡이로 나타났을 때, 오차의 독립성과 등분산성이 성립하는 모형이 되는 것이다.

 

 

plot(longley$Year, residuals(fit1))

 

year에 대한 잔차 분석을 적용해보았다.

 

 

데이터$변수명

참고로 위와 같은 코드는 해당 데이터에서 해당 변수를 끌어올 때 쓰이는 코드이다.

 

 

 

 

다시 돌아와서 결과로 나온 잔차 산점도를 보자면 아래와 같다.

 

산점도를 보았을 때, 선형, 점점 퍼지는 깔때기 모양 등 특정한 패턴이 없어 보인다.

즉, 산점도가 비선형성을 띄므로 등분산성을 만족한다고 볼 수 있다.

 

 

 

 

 

 

728x90
반응형
Comments