User Tools

Site Tools


multiple_regression_examples

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Next revisionBoth sides next revision
multiple_regression_examples [2020/07/05 12:20] hkimscilmultiple_regression_examples [2020/12/01 17:01] – [E.g. 1] hkimscil
Line 7: Line 7:
 d.yyk <- subset(d.yyk, select = -c(1)) d.yyk <- subset(d.yyk, select = -c(1))
 d.yyk d.yyk
 +</code>
 +<code>
 +> d.yyk <- subset(d.yyk, select = -c(1))
 +> d.yyk
 +    bmi stress happiness
 +1  15.1      2         4
 +2  15.3      2         4
 +3  16.4      1         5
 +4  16.3      2         4
 +5  17.5      2         3
 +6  18.8      2         4
 +7  19.2      2         3
 +8  20.3      1         4
 +9  21.3      1         4
 +10 21.3      2         4
 +11 22.4      2         5
 +12 23.5      2         5
 +13 23.7      2         4
 +14 24.2      3         3
 +15 24.3      3         3
 +16 25.6      2         3
 +17 26.4      3         3
 +18 26.4      3         2
 +19 26.4      3         2
 +20 27.5      3         3
 +21 28.6      3         2
 +22 28.2      4         2
 +23 31.3      3         2
 +24 32.1      4         1
 +25 33.1      4         1
 +26 33.2      5         1
 +27 34.4      5         1
 +28 35.8      5         1
 +29 36.1      5         1
 +30 38.1      5         1
 +</code>
 +우선 여기에서 종속변인인 (dv) happiness에 bmi와 stress를 리그레션 해본다. 
 +<code>
 +attach(d.yyk)
 +lm.happiness.bmistress <- lm(happiness ~ bmi + stress, data=d.yyk)
 +summary(lm.happiness.bmistress)
 +anova(lm.happiness.bmistress)
 </code> </code>
 +
 +<code>
 +> attach(d.yyk)
 +> lm.happiness.bmistress <- lm(happiness ~ bmi + stress, data=d.yyk)
 +> summary(lm.happiness.bmistress)
 +
 +Call:
 +lm(formula = happiness ~ bmi + stress, data = d.yyk)
 +
 +Residuals:
 +     Min       1Q   Median       3Q      Max 
 +-0.89293 -0.40909  0.08816  0.29844  1.46429 
 +
 +Coefficients:
 +            Estimate Std. Error t value Pr(>|t|)    
 +(Intercept)  6.29098    0.50779  12.389 1.19e-12 ***
 +bmi         -0.05954    0.03626  -1.642  0.11222    
 +stress      -0.67809    0.19273  -3.518  0.00156 ** 
 +---
 +Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
 +
 +Residual standard error: 0.5869 on 27 degrees of freedom
 +Multiple R-squared:  0.8217, Adjusted R-squared:  0.8085 
 +F-statistic: 62.22 on 2 and 27 DF,  p-value: 7.76e-11
 +>
 +
 +> anova(lm.happiness.bmistress)
 +Analysis of Variance Table
 +
 +Response: happiness
 +          Df Sum Sq Mean Sq F value    Pr(>F)    
 +bmi        1 38.603  38.603 112.070 4.124e-11 ***
 +stress      4.264   4.264  12.378  0.001558 ** 
 +Residuals 27  9.300   0.344                      
 +---
 +Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
 +
 +
 +</code>
 +
 +위의 분석을 보면 
 +R<sup>2</sup> = 0.8217, F (2, 27) = 62.77, p = 7.76e-11
 +
 +그러나, coefficient 값을 보면 bmi는 significant 하지 않고, stress는 significant하다. 이는 R제곱에 영향을 주는 것으로 stress가 주이고 bmi의 영향력은 미미하다고 하다는 결론을 내리도록 해준다. 그러나, [[:multiple regression]]에서 언급한 것처럼 독립변인이 두 개 이상일 때에는 무엇이 얼마나 종속변인에 영향을 주는지 그림을 그릴 수 있어야 하므로, 아래와 같이 bmi만을 가지고 regression을 다시 해본다.
 +
 +<code>
 +lm.happiness.bmi <- lm(happiness ~ bmi, data=d.yyk)
 +summary(lm.happiness.bmi)
 +anova(lm.happiness.bmi)
 +</code>
 +
 +<code>
 +> lm.happiness.bmi <- lm(happiness ~ bmi, data=d.yyk)
 +
 +> summary(lm.happiness.bmi)
 +
 +Call:
 +lm(formula = happiness ~ bmi, data = d.yyk)
 +
 +Residuals:
 +     Min       1Q   Median       3Q      Max 
 +-1.20754 -0.49871 -0.03181  0.35669  1.83265 
 +
 +Coefficients:
 +            Estimate Std. Error t value Pr(>|t|)    
 +(Intercept)  7.24143    0.50990  14.202 2.54e-14 ***
 +bmi         -0.17337    0.01942  -8.927 1.11e-09 ***
 +---
 +Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
 +
 +Residual standard error: 0.696 on 28 degrees of freedom
 +Multiple R-squared:   0.74, Adjusted R-squared:  0.7307 
 +F-statistic: 79.69 on 1 and 28 DF,  p-value: 1.109e-09
 +
 +> anova(lm.happiness.bmi)
 +Analysis of Variance Table
 +
 +Response: happiness
 +          Df Sum Sq Mean Sq F value    Pr(>F)    
 +bmi        1 38.603  38.603  79.687 1.109e-09 ***
 +Residuals 28 13.564   0.484                      
 +---
 +Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
 +
 +</code>
 +놀랍게도 bmi 하나만을 가지고 regression을 했더니, R제곱 값이 .74이었다 (F(1,28) = 79.69, p = 1.109e-09). 이런 결과가 나올 수 있는 이유는 독립변인인 bmi와 stress 간의 상관관계가 높아서 처음 분석에서 그 영향력을 (설명력, R제곱에 기여하는 부분을) 하나의 독립변인이 모두 가졌갔기 때문이라고 생각할 수 있다. 이 경우에는 그 독립변인이 stress이다. 
 +
 +happiness에 stress 만을 regression 해본 결과는 아래와 같다. 
 +
 +<code>
 +lm.happiness.stress <- lm(happiness ~ stress, data = d.yyk)
 +summary(lm.happiness.stress)
 +anova(lm.happiness.stress)
 +</code>
 +
 +<code>
 +> lm.happiness.stress <- lm(happiness ~ stress, data = d.yyk)
 +> summary(lm.happiness.stress)
 +
 +Call:
 +lm(formula = happiness ~ stress, data = d.yyk)
 +
 +Residuals:
 +    Min      1Q  Median      3Q     Max 
 +-0.7449 -0.6657  0.2155  0.3343  1.3343 
 +
 +Coefficients:
 +            Estimate Std. Error t value Pr(>|t|)    
 +(Intercept)  5.58651    0.27965   19.98  < 2e-16 ***
 +stress      -0.96041    0.08964  -10.71 2.05e-11 ***
 +---
 +Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
 +
 +Residual standard error: 0.6044 on 28 degrees of freedom
 +Multiple R-squared:  0.8039, Adjusted R-squared:  0.7969 
 +F-statistic: 114.8 on 1 and 28 DF,  p-value: 2.053e-11
 +
 +> anova(lm.happiness.stress)
 +Analysis of Variance Table
 +
 +Response: happiness
 +          Df Sum Sq Mean Sq F value    Pr(>F)    
 +stress     1 41.938  41.938   114.8 2.053e-11 ***
 +Residuals 28 10.229   0.365                      
 +---
 +Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
 +
 +
 +</code>
 +R제곱값은 0.80로 (F(1, 28) = 114.8, 2.053e-11) 스트레스만으로도 significant한 결과를 갖는다. 
 +
 +그렇다면 stress 와 bmi가 공통으로 기여하는 부분을 뺀 순수 기여분은 어떻게 될까? 즉, 위의 .80 부분 중 bmi와 공통으로 기여하는 부분을 제외한 나머지는 얼마일까? 보통 이와 같은 작업을 bmi의 (다른 독립변인의) 영향력을 제어하고 (control) 순수기여분만을 살펴본다고 이야기 한다. 
 +
 +이를 위해서 아래를 계획, 수행해본다. 
 +
 +  - 각각의 독립변인이 고유하게 미치는 영향력은 (설명력은) 무엇인지를 본다. 
 +  - 공통설명력은 얼마나 되는지 본다.
 +
 +  - 1을 위해서는 각 독립변인과 종속변인인 happiness의 semi-partial correlation값을 구해서 제곱해보면 되겠다. 
 +  - 2를 위해서는 두 독립변인을 써서 구했던 r 제곱값에서 위의 1에서 구한 제곱값들을 제외한 나머지를 보면 된겠다. 
 +
 +  * 결론을 내기 위한 계획을 세우고 실행한다. 
 +  * 이는 아래와 같이 정리할 수 있다
 +
 +{{:pasted:20201201-170048.png}}
 +
 +===== 각각의 독립변인이 고유하게 미치는 영향력은 (설명력은) 무엇인지를 본다 =====
 +<code>
 +m1 <- 
 +</code>
 +
 +
 +
 +
 +
 +'' stress: 8.1% '' 와 '' bmi: 1.78% '' 만이 독립변인의 고유영향력이고 이를 제외한 '' 82.17 - (9.88) = 72.29 '' 가 공통영향력이라고 하겠다.
 +
  
  
multiple_regression_examples.txt · Last modified: 2023/10/21 13:26 by hkimscil

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki