PSPP 강의 5편 — 상관, 회귀, 로지스틱

이 편에서는 변수 사이의 관계를 본다. 상관행렬, 연봉을 나이·학력·부서로 설명하는 다중회귀, 재수강 의향을 만족도·향상분·집단으로 예측하는 로지스틱 회귀다.

데이터

data/training_survey.sav. 연봉은 나이, 학력, 개발부서 여부의 함수로 만들었으니 회귀의 R²가 .6~.7 근처로 나와야 정상이다. 재수강 의향은 만족도와 향상분에 의존하도록 만들었다.

메뉴로 하기

Analyze > Bivariate Correlation이 상관, Analyze > Regression > Linear가 선형회귀, Regression > Binary Logistic이 로지스틱이다.

상관 대화상자는 변수를 여러 개 넣으면 행렬을 낸다.

PSPPIRE Bivariate Correlations 대화상자

선형회귀 대화상자는 종속변수 하나와 독립변수 여러 개를 넣는다. Statistics 버튼에서 계수, R, 분산분석표를 고른다.

PSPPIRE Linear Regression 대화상자

신택스로 하기

syntax/06_correlation_regression.spssyntax/07_logistic.sps다. 회귀 전에 개발부서 더미 변수를 만든다. (dept = 2)는 참이면 1, 거짓이면 0이 되는 SPSS 식 그대로다.

CORRELATIONS
  /VARIABLES=age edu salary sat_mean gain
  /PRINT=TWOTAIL SIG.

* 부서 더미(개발 여부) 생성 후 급여 회귀.
COMPUTE dev = (dept = 2).
VARIABLE LABELS dev '개발부서 여부'.

REGRESSION
  /STATISTICS COEFF R ANOVA
  /DEPENDENT salary
  /METHOD=ENTER age edu dev.
LOGISTIC REGRESSION VARIABLES reenroll
  WITH sat_mean gain group
  /PRINT=SUMMARY.

출력 읽기

상관행렬의 일부다. 나이와 연봉 r=.544, 학력과 연봉 r=.476이고, 나이와 학력은 무관하다(-.017). 만족도와 향상분은 어느 것과도 상관이 없게 설계했다.

|나이                 Pearson           |1.000|    -.017|     .544|       .017|               -.011|
|                     Sig. (2-tailed)   |     |     .816|     .000|       .810|                .882|
|최종 학력            Pearson           |-.017|    1.000|     .476|       .046|               -.002|
|연봉(만원)           Pearson           | .544|     .476|    1.000|      -.028|                .012|

회귀의 모형 요약과 계수표다. R²=.67. 세 독립변수 모두 p<.001이고, 표준화 계수 β는 나이 .56, 학력 .43, 개발부서 .37 순이다.

                 Model Summary (연봉(만원))
+---+--------+-----------------+--------------------------+
| R |R Square|Adjusted R Square|Std. Error of the Estimate|
+---+--------+-----------------+--------------------------+
|.82|     .67|              .66|                    332.84|
+---+--------+-----------------+--------------------------+
|(Constant)   |     1136.76|         140.15|                      .00| 8.11|.000|
|나이         |       44.22|           3.23|                      .56|13.68|.000|
|최종 학력    |      316.58|          30.87|                      .43|10.25|.000|
|개발부서 여부|      434.65|          48.38|                      .37| 8.98|.000|

읽으면 “나이 한 살에 연봉 44만원, 학력 한 단계에 317만원, 개발부서면 435만원 더”다. 데이터를 그렇게 만들었으니 당연하지만, 회귀가 설계값을 되찾아 낸 것이다.

로지스틱 회귀의 계수표다. 만족도(Exp(B)=1.74, p=.005)와 향상분(1.09, p=.002)이 유의하고, 집단 자체는 향상분을 통제하면 유의하지 않다(p=.269). 분류 정확도는 68.0%다.

                   Variables in the Equation
+-----------------------------+-----+----+-----+--+----+------+
|                             |  B  |S.E.| Wald|df|Sig.|Exp(B)|
+-----------------------------+-----+----+-----+--+----+------+
|Step 1 만족도 평균           |  .56| .20| 7.86| 1|.005|  1.74|
|       점수 향상분(사후-사전)|  .08| .03| 9.29| 1|.002|  1.09|
|       실험 집단             |  .39| .35| 1.22| 1|.269|  1.48|
|       Constant              |-3.00| .80|13.95| 1|.000|   .05|
+-----------------------------+-----+----+-----+--+----+------+

SPSS와 대조

항목 PSPP 2.1.1 SPSS 32
r 나이–연봉 / 학력–연봉 .544 / .476 .544 / .476
R / R² / 수정 R² .82 / .67 / .66 .817 / .668 / .663
추정값의 표준오차 332.84 332.838
B 상수 / 나이 / 학력 / 개발 1136.76 / 44.22 / 316.58 / 434.65 1136.765 / 44.219 / 316.578 / 434.653
β 나이 / 학력 / 개발 .56 / .43 / .37 .563 / .427 / .374
로지스틱 B 만족도 / 향상분 / 집단 .56 / .08 / .39 .556 / .083 / .390
로지스틱 Exp(B) 1.74 / 1.09 / 1.48 1.743 / 1.086 / 1.477
로지스틱 p .005 / .002 / .269 .005 / .002 / .269
분류 정확도 68.0% 68.0%

전부 같다. SPSS에서 같은 로지스틱 모형을 GENLIN(일반화 선형모형)으로 다시 돌려도 계수가 완전히 같았다. GENLIN은 PSPP에 없지만, 이항 로지스틱이라면 LOGISTIC REGRESSION으로 같은 답을 얻는다.

함정과 메모

  • 상관행렬에서 PSPP는 소수 셋째 자리(.544)까지 인쇄한다. 다른 표는 대부분 둘째 자리다.
  • REGRESSION의 단계선택(STEPWISE)은 PSPP에서 제한적이다. 이 시리즈에서는 ENTER만 썼다.
  • 편상관(PARTIAL CORR)은 PSPP에 없다. 회귀 잔차로 우회하는 법을 8편에서 다룬다.

다음 편

6편에서 만족도 5문항의 신뢰도와 요인구조를 확인하고, 비모수 검정에서 PSPP와 SPSS의 값이 처음으로 어긋나는 지점을 본다.


시리즈 목차: 0편 총론 · 1편 · 2편 · 3편 · 4편 · 5편 상관·회귀·로지스틱 · 6편 · 7편 · 8편 · 9편

댓글 남기기

이 사이트는 Akismet을 사용하여 스팸을 줄입니다. 댓글 데이터가 어떻게 처리되는지 알아보세요.