using_dummy_variables
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| using_dummy_variables [2026/06/09 23:21] – hkimscil | using_dummy_variables [2026/06/14 23:15] (current) – [Regression with two Catogorical IVs] hkimscil | ||
|---|---|---|---|
| Line 874: | Line 874: | ||
| {{pasted: | {{pasted: | ||
| {{pasted: | {{pasted: | ||
| - | |||
| 위의 아웃풋을 살펴 보면, 학생들의 성적이 가지는 총 변량의 (Sum of Square Total) 약 22.6% 를 방학이 있고 없고로 구분되는 yr_rnd 변인이 설명을 하고 있으며, 이는 통계적으로 유의미한 것이다 (F(1, 398) = 116.241, p < .001). 위의 regression output은 yr_rnd 변인 중에서 방학이 있는 특성이 baseline이 되어 있으며, 이를 염두에 두고 regression식을 적어 보면 아래와 같다. | 위의 아웃풋을 살펴 보면, 학생들의 성적이 가지는 총 변량의 (Sum of Square Total) 약 22.6% 를 방학이 있고 없고로 구분되는 yr_rnd 변인이 설명을 하고 있으며, 이는 통계적으로 유의미한 것이다 (F(1, 398) = 116.241, p < .001). 위의 regression output은 yr_rnd 변인 중에서 방학이 있는 특성이 baseline이 되어 있으며, 이를 염두에 두고 regression식을 적어 보면 아래와 같다. | ||
| - | $\hat{\text{api00}} | + | '' |
| - | + | * yr_rndno_break: | |
| - | 이 때, $\text{yr_rndnobr} $ 은 no break인 경우를 | + | * y hat = 684.54 - 160.51 * (1) |
| + | * y hat = 524.03 | ||
| + | * yr_rndbreak: | ||
| + | * y hat = 684.54 - 160.51 * (0) | ||
| + | * y hat = 684.54 | ||
| - | * X: 0 = break | + | 위 회귀식에서 r은 |
| - | * X: 1 = no break | + | '' |
| - | + | '' | |
| - | 이므로 x=0 일때를 대입해 보면, | + | break일 경우에는 |
| + | '' | ||
| + | * t.value | ||
| + | * F.value | ||
| + | * t.value.lm | ||
| + | * F.value.lm | ||
| {{regressionCategory.jpg}} | {{regressionCategory.jpg}} | ||
| Line 891: | Line 899: | ||
| 이와 같이 종류변인(category, | 이와 같이 종류변인(category, | ||
| + | |||
| + | ===== Regression with a categorical IV with 3 attributes ===== | ||
| + | <tabbox rs.3att> | ||
| + | < | ||
| + | m.mealcat <- lm(api00 ~ mealcat, data=df) | ||
| + | summary(m.mealcat) | ||
| + | </ | ||
| + | <tabbox ro.3att> | ||
| + | < | ||
| + | > ####################################### | ||
| + | > # categorical IV with 3 or more attributes | ||
| + | > ####################################### | ||
| + | > m.mealcat <- lm(api00 ~ mealcat, data=df) | ||
| + | > summary(m.mealcat) | ||
| + | |||
| + | Call: | ||
| + | lm(formula = api00 ~ mealcat, data = df) | ||
| + | |||
| + | Residuals: | ||
| + | | ||
| + | -253.394 | ||
| + | |||
| + | Coefficients: | ||
| + | | ||
| + | (Intercept) | ||
| + | mealcatto80 | ||
| + | mealcatto100 -301.338 | ||
| + | --- | ||
| + | Signif. codes: | ||
| + | |||
| + | Residual standard error: 70.61 on 397 degrees of freedom | ||
| + | Multiple R-squared: | ||
| + | F-statistic: | ||
| + | |||
| + | > | ||
| + | </ | ||
| + | </ | ||
| + | |||
| + | < | ||
| + | y hat = 805.718 - 166.324 * to80 - 301.338 * to100 | ||
| + | mealcat0-46 (to46 으로 대체) | ||
| + | mealcat47-80 (to80 으로 대체) | ||
| + | maelcat81-100 (to100 으로 대체) | ||
| + | </ | ||
| + | |||
| + | 이에 대한 해석도 앞에서의 것과 마찬가지이다. | ||
| + | * y hat = 805.718 - 166.324*mg2 - 301.338*mg3 | ||
| + | * mg1 = 1, mg2 = 0, mg3 = 0 일 경우 | ||
| + | * y hat = 805.718 - 166.324*(0) - 301.338*(0) | ||
| + | * y hat = 805.718 | ||
| + | * mg1 = 0, mg2 = 1, mg3 = 0 일 경우 | ||
| + | * y hat = 805.718 - 166.324*(1) - 301.338*(0) | ||
| + | * y hat = 805.718 - 166.324 | ||
| + | * y hat = 639.394 | ||
| + | * mg1 = 0, mg2 = 0, mg3 = 1 일 경우 | ||
| + | * y hat = 805.718 - 166.324*(0) - 301.338*(1) | ||
| + | * y hat = 805.718 - 301.338 | ||
| + | * y hat = 504.38 | ||
| + | |||
| + | * 즉, 무료급식의 퍼센티지가 높을 수록 api점수가 낮음을 알 수 있다. 이렇게 무료급식 퍼센티지를 독립변인으로 종속변인인 api00점수를 (학력점수) 봤을 때, 그 설명력이 통계학적으로 유효한가는 regression output에서 (summary(mod2)) | ||
| + | * F-value 와 p-value를 가지고 판단한다. | ||
| + | * (F (2, 397) = 611.1; p-value < 2.2e-16) | ||
| + | * 위에서 2, 397 은 각각 between degrees of freedom 과 within degrees of freedom 이다. 이를 보고도 우리는 | ||
| + | * 총 400개의 학교가 데이터에 참여했음을 알 수 있고 (2 + 397 에 1을 더한 값), | ||
| + | * 독립변인의 종류가 3가지 (df = 2 이므로) 임을 알 수 있다. | ||
| + | * R square value 는 설명력의 크기를 알려준다. | ||
| + | * 0.7548 즉, 75.48% 를 독립변인이 종속변인을 설명한다 (상당한 크기임을 알 수 있다). | ||
| + | |||
| ===== Regression with a continuous and a categorical IV ===== | ===== Regression with a continuous and a categorical IV ===== | ||
| Line 1061: | Line 1137: | ||
| > | > | ||
| > | > | ||
| + | </ | ||
| + | {{pasted: | ||
| + | |||
| + | < | ||
| > # 1. 평균을 빼준 값을 새로운 변인으로 저장 | > # 1. 평균을 빼준 값을 새로운 변인으로 저장 | ||
| > df$meals_centered <- | > df$meals_centered <- | ||
| Line 1104: | Line 1184: | ||
| > | > | ||
| > | > | ||
| + | </ | ||
| + | {{pasted: | ||
| + | |||
| + | < | ||
| > # Install the package if you do not have it | > # Install the package if you do not have it | ||
| > # install.packages(" | > # install.packages(" | ||
| Line 1113: | Line 1197: | ||
| > | > | ||
| > | > | ||
| + | </ | ||
| + | {{pasted: | ||
| + | |||
| + | < | ||
| > m.ellyr_rnd <- lm(api00~ell+yr_rnd, | > m.ellyr_rnd <- lm(api00~ell+yr_rnd, | ||
| > summary(m.ellyr_rnd) | > summary(m.ellyr_rnd) | ||
| Line 1213: | Line 1301: | ||
| > | > | ||
| </ | </ | ||
| + | {{pasted: | ||
| + | |||
| </ | </ | ||
| - | {{pasted: | ||
| - | {{pasted: | ||
| - | {{pasted: | ||
| - | {{pasted: | ||
| ===== Regression with a categorical and a continuous IV: e.g. 2 ===== | ===== Regression with a categorical and a continuous IV: e.g. 2 ===== | ||
| Line 1442: | Line 1528: | ||
| > nobr.to100 <- coefs[1]+coefs[2]+coefs[4] | > nobr.to100 <- coefs[1]+coefs[2]+coefs[4] | ||
| > cat(br.to46, | > cat(br.to46, | ||
| - | 808.0131 644.2758 526.33> cat(nobr.to46, | + | 808.0131 644.2758 526.33 |
| + | > cat(nobr.to46, | ||
| 765.0531 601.3157 483.3699> | 765.0531 601.3157 483.3699> | ||
| + | </ | ||
| + | 예측식은 아래와 같다. | ||
| + | < | ||
| + | y hat = 808.013 + -42.960*(yr_rndno_break) + -163.737(mealcat47-80) + -281.683(mealcat81-100) | ||
| + | |||
| + | yr_rnd: | ||
| + | break = 방학있음 | ||
| + | no_break = 방학없음 | ||
| + | |||
| + | mealcat: | ||
| + | 0-46% free meals | ||
| + | 47-80% | ||
| + | 81-100% | ||
| + | </ | ||
| + | 이에 대한 해석은 각각의 독립변인의 종류 수인 2개와 3개를 곱한 6개의 경우로 나누어서 생각할 수 있다. 즉, | ||
| + | '' | ||
| + | 을 바탕으로 각각의 조건을 고려하여 y hat를 계산하면 아래와 같다. | ||
| + | |||
| + | <wrap # | ||
| + | TABLE. Two dummy variables | ||
| + | ^ ^ mealcat0-46 | ||
| + | | yr_rndbreak | ||
| + | yr_rndno_break = 0 | ||
| + | mealcat0-46 = 1 | ||
| + | mealcat47-80 = 0 | ||
| + | mealcat81-100 = 0 경우 | ||
| + | '' | ||
| + | </ | ||
| + | yr_rndno_break = 0 | ||
| + | mealcat0-46 = 0 | ||
| + | mealcat47-80 = 1 | ||
| + | mealcat81-100 = 0 경우 | ||
| + | '' | ||
| + | </ | ||
| + | yr_rndno_break = 0 | ||
| + | mealcat0-46 = 0 | ||
| + | mealcat47-80 = 0 | ||
| + | mealcat81-100 = 1 경우 | ||
| + | '' | ||
| + | </ | ||
| + | | yr_rndno_break | ||
| + | yr_rndno_break = 1 | ||
| + | mealcat0-46 = 1 | ||
| + | mealcat47-80 = 0 | ||
| + | mealcat81-100 = 0 경우 | ||
| + | '' | ||
| + | </ | ||
| + | yr_rndno_break = 1 | ||
| + | mealcat0-46 = 0 | ||
| + | mealcat47-80 = 1 | ||
| + | mealcat81-100 = 0 경우 | ||
| + | '' | ||
| + | </ | ||
| + | yr_rndno_break = 1 | ||
| + | mealcat0-46 = 0 | ||
| + | mealcat47-80 = 0 | ||
| + | mealcat81-100 = 1 경우 | ||
| + | '' | ||
| + | </ | ||
| + | |||
| + | < | ||
| > # 해석. interaction | > # 해석. interaction | ||
| > m.yrrndxmealcat <- lm(api00~yr_rnd*mealcat, | > m.yrrndxmealcat <- lm(api00~yr_rnd*mealcat, | ||
| Line 1487: | Line 1635: | ||
| > nobr.to100 <- coefs[1]+coefs[2]+coefs[4]+coefs[6] | > nobr.to100 <- coefs[1]+coefs[2]+coefs[4]+coefs[6] | ||
| > cat(br.to46, | > cat(br.to46, | ||
| - | 809.6855 645.2735 521.4925> | + | 809.6855 645.2735 521.4925 |
| + | > cat(nobr.to46, | ||
| 735.4286 593.5333 488 | 735.4286 593.5333 488 | ||
| > | > | ||
| </ | </ | ||
| - | </tabbox> | + | 위의 테스트는 두 개의 독립변인이 모두 종류이고 종속변인이 숫자일 때의 조건을 만족하니 factorial anova를 해도 된다. 아래는 그 결과이다. |
| + | <code> | ||
| + | > mod4 <- lm(api00 ~ yr_rnd + mealcat + yr_rnd: | ||
| + | > summary(mod4) | ||
| + | Call: | ||
| + | lm(formula = api00 ~ yr_rnd + mealcat + yr_rnd: | ||
| + | |||
| + | Residuals: | ||
| + | | ||
| + | -207.533 | ||
| + | |||
| + | Coefficients: | ||
| + | | ||
| + | (Intercept) | ||
| + | yr_rndno_break | ||
| + | mealcat47-80 | ||
| + | mealcat81-100 | ||
| + | yr_rndno_break: | ||
| + | yr_rndno_break: | ||
| + | --- | ||
| + | Signif. codes: | ||
| + | |||
| + | Residual standard error: 68.87 on 394 degrees of freedom | ||
| + | Multiple R-squared: | ||
| + | F-statistic: | ||
| + | </ | ||
| + | |||
| + | < | ||
| + | Coefficients: | ||
| + | | ||
| + | (Intercept) | ||
| + | yr_rndno_break | ||
| + | mealcat47-80 | ||
| + | mealcat81-100 | ||
| + | yr_rndno_break: | ||
| + | yr_rndno_break: | ||
| + | --- | ||
| + | |||
| + | 이전 식 | ||
| + | y hat = 808.013 + -42.960 * (nobr) + -163.737 * (to80) + -281.683 * (to100) | ||
| + | 위의 식 | ||
| + | y hat = 809.685 + -74.257*(nobr) + | ||
| + | -164.412*(to80) + | ||
| + | -288.193*(to100) + | ||
| + | | ||
| + | | ||
| + | |||
| + | yr_rnd: | ||
| + | break = 방학있음 | ||
| + | no_break = 방학없음 | ||
| + | |||
| + | mealcat: | ||
| + | 0-46% free meals | ||
| + | 47-80% | ||
| + | 81-100% | ||
| + | </ | ||
| + | |||
| + | ^ ^ mealcat0-46 | ||
| + | | yr_rndbreak | ||
| + | yr_rndno_break = 0 | ||
| + | mealcat47-80 = 0 | ||
| + | mealcat81-100 = 0 경우 | ||
| + | '' | ||
| + | </ | ||
| + | mealcat0-46 = 0 | ||
| + | mealcat81-100 = 0 경우 | ||
| + | '' | ||
| + | 163.737 | ||
| + | = 645.9'' | ||
| + | </ | ||
| + | yr_rndno_break = 0 | ||
| + | mealcat0-46 = 0 | ||
| + | mealcat47-80 = 0 경우 | ||
| + | '' | ||
| + | 281.683 | ||
| + | = 528'' | ||
| + | </ | ||
| + | | yr_rndno_break | ||
| + | yr_rndbreak = 0 | ||
| + | mealcat47-80 = 0 | ||
| + | mealcat81-100 = 0 경우 | ||
| + | '' | ||
| + | 74.257 | ||
| + | = 735.4'' | ||
| + | </ | ||
| + | yr_rndbreak = 0 | ||
| + | mealcat0-46 = 0 | ||
| + | mealcat81-100 = 0 경우 | ||
| + | '' | ||
| + | 74.257 - | ||
| + | 164.412 + | ||
| + | <fc # | ||
| + | = 593.5'' | ||
| + | </ | ||
| + | yr_rndbreak = 0 | ||
| + | mealcat0-46 = 0 | ||
| + | mealcat47-80 = 0 경우 | ||
| + | '' | ||
| + | 74.257 - | ||
| + | 288.193 + | ||
| + | <fc # | ||
| + | = 488'' | ||
| + | </ | ||
| + | 마지막 두 케이스를 보면 no_break학교 중에서 밀카테고리 2와 3에서 떨어지는 정도가 어느 정도 완화되는 경향을 보이지만 통계학적으로 significant하지는 않다. | ||
| + | |||
| + | |||
| + | </ | ||
using_dummy_variables.1781047267.txt.gz · Last modified: by hkimscil
