Rex 분석 : 포아송회귀분석

  1. 분석모듈 설명
  2. 포아송회귀분석은 종속변수(dependent variable)가 포아송 분포를 따른다고 가정하고 일반화선형모형의 회귀분석을 수행하는 통계분석 모듈입니다. 포아송회귀분석은 특히 종속변수가 가산자료(count data)일 때 사용됩니다. 또한 관측치에 영향을 미칠 수 있는 요인 중 관심 대상이 아닌 변수의 경우(예: 인구가 천 명인 마을과 인구가 십만 명인 마을에서 추출한 자료에 대해 인구를 보정하고자 할 경우), 필요에 따라 오프셋(offset)으로 지정할 수 있으며, 오프셋에 들어간 변수는 회귀계수 추정 등 분석에 사용되지 않습니다. 포아송 분포를 따르는 변수는 평균과 분산이 동일한데, 실제 자료는 이러한 경향을 따르지 않을 수 있습니다. 이 경우, 준가능도(quasi-likelihood)를 이용하여 분산이 평균보다 큰 과분산(overdispersion) 모형을 적합할 수 있습니다.
  3. 분석에 사용된 R 패키지 및 함수
  4. * Poisson regression for binomial data : stats 패키지의 glm 함수
    * Confidence interval : stats 패키지의 confint.default 함수
    * Variance inflation factor : rms 패키지의 vif 함수
    * ANOVA table : stats 패키지의 anova 함수, car 패키지의 Anova 함수
    * Cross validation : caret 패키지의 trainControl, train 함수
    * Model fitness measurements : stats 패키지의 residuals, logLik, AIC, BIC 함수
    * Pseudo R-squared measures : pscl 패키지의 pR2 함수
    * Goodness of fit test : stats 패키지의 anova 함수
    * Fitted value : stats 패키지의 fitted 함수
    * Residual : stats 패키지의 residuals 함수
    * Standardized residual : MASS 패키지의 stdres 함수
    * Studentized residual : MASS 패키지의 studres 함수
    * Linear predictors : VGAM 패키지의 predictors 함수
    * Diagonals of hat matrix : stats 패키지의 hatvalues 함수
    * Cook's distance : stats 패키지의 cooks.distance 함수
    * 위에 나열된 결과 외에는 R의 기본 함수를 사용하였음.
  5. User interface: 변수설정 탭
    • 
       	
    • 전체변수: 엑셀 스프레드시트에 있는 변수의 목록을 나타냅니다.
    • 종속변수
    • - 종속변수에 해당하는 변수를 전체변수로부터 선택할 수 있습니다. - 필수로 한 개의 양적변수(Quantitative variable)가 선택되어야 하며, 음수를 포함할 수 없습니다.
    • 질적변수, 양적변수
    • - 설명변수에 포함될 변수들의 유형을 지정해줍니다. - 종속변수와 중복되어 선택될 수 없습니다. - 질적변수(qualitative variable)와 양적변수(quantitative variable)는 서로 중복되어 선택될 수 없습니다. - 질적변수로 선택된 변수들은 문자로 인식되어 분석에 사용됩니다. - 문자형변수는 양적변수로 선택될 수 없으며, 선택된 경우 분석에서 제외됩니다. - 한 개 이상의 변수를 입력할 수 있지만 변수를 선택하지 않아도 분석을 실시할 수 있습니다.
    • 최종모형
    • - 질적변수 혹은 양적변수로 정의된 변수들 중 분석에 포함할 변수를 선택할 수 있는데, 여러 변수를 중복 선택하여 주효과 버튼을 클릭하면 최종모형에 주효과들이 포함되고, 교호작용 버튼을 클릭하면 선택된 변수들의 교호작용이 최종모형에 포함됩니다. - 설명변수로 선택된 변수에서 결측치를 포함하는 관측치(observation)는 분석에서 제외됩니다.
    • 오프셋
    • - 하나 이상의 양적변수를 오프셋으로 선택할 수 있습니다. - 필수적으로 지정할 필요는 없으며, 지정하지 않아도 분석이 가능합니다.
    • 연결함수: 로그, 항등함수, 제곱근 중 하나를 연결함수로 선택할 수 있습니다.
    • 과분산적합: 준가능도를 이용한 과분산 모형을 적합 시키려면 이 옵션을 선택하십시오.
  6. User interface: 출력옵션 탭
    • 
      	
    • 회귀계수
    • - 신뢰구간: 결과출력창에 회귀계수 추정값의 신뢰구간(confidence interval)을 출력하려면 이 옵션을 선택하십시오. - 신뢰수준(Confidence level)으로 0 과 1 사이의 값을 지정할 수 있습니다.
    • 지수 모수 추정량: 결과출력창에 지수(exponential) 회귀계수 추정값을 출력하려면 이 옵션을 선택하십시오.
    • 분산팽창지수(VIF): 설명변수들간의 다중공선성(multicollinearity)을 진단하는 방법 중 하나인 분산팽창지수(Variance Inflation Factor, VIF)를 출력하려면 이 옵션을 선택하십시오.
    • 분산분석표
    • - 결과출력창에 분산분석표(ANOVA table)를 포함하려면 이 옵션을 선택하십시오. - 제곱합(sum of squares)의 유형으로 Type I, II, III 중 하나를 선택할 수 있습니다. 각 유형은 다음과 같습니다. - Type I: 설명변수를 순차적으로(sequentially) 하나씩 추가하며 제곱합의 증가량을 계산합니다. 설명변수가 다항식(polynomial)인 경우에 적합합니다. - Type II: 모든 주 효과가 포함된 모형에서 하나의 주 효과가 제거될 때 발생하는 제곱합의 감소량을 계산합니다. 실제 모형이 주효과만으로 구성되어 있을 때 적합합니다. - Type III: 사용자에 의해 지정된 모든 효과가 포함된 모형에서 하나의 효과가 제거될 때 발생하는 제곱합의 감소량을 계산합니다.
    • K-fold Cross validation
    • - 교차검증(Cross validation)을 수행하려면 이 옵션을 선택하십시오. - K: 학습자료와 시험자료의 비율을 지정할 수 있습니다. 예를 들어 K가 3로 지정된 경우, 전체데이터를 무작위로 3개로 나눈 후 두 개는 학습데이터(training data)로 사용하여 모델을 적합시키고, 나머지 하나를 시험데이터(test data)로 사용하여 적합된 모델의 정확도를 계산합니다. 이 과정을 3개로 나누어진 데이터 모두에 적용하게 되어 총 3번 반복하게 되고, 세 개의 모델로부터 얻은 정확도의 평균을 모델의 최종 정확도로 판단합니다. - K는 2 이상의 정수만 가능하며, 관측값의 수보다 더 큰 값이 입력되면 자동으로 leave-one-out 교차검증을 실시합니다.
    • 적합도검정: 모형의 적합도검정(Goodness of fit test)를 실시하려면 이 옵션을 선택하십시오.
    • 과분산검정: 모형의 과분산(over-dispersion) 여부를 검정하려면 이 옵션을 선택하십시오.
    • 잔차진단그래프
    • - 결과출력창에 잔차진단그래프를 포함하려면 이 옵션을 선택하십시오. - 잔차, 쿡의 거리(Cook's distance), 지렛점(Leverage) 등을 이용한 그래프로 선형회귀분석이 잘 수행되었는지를 시각적으로 진단/평가할 수 있는 6개의 그래프를 포함하고 있습니다.
    • 적합값: 엑셀 시트에 적합값(fitted value)을 저장하려면 이 옵션을 선택하십시오. (저장될 변수 이름: PoisReg_Fitted)
    • 잔차: 엑셀 시트에 잔차(residual)를 저장하려면 이 옵션을 선택하십시오. (저장될 변수 이름: PoisReg_Resid)
    • 표준화잔차: 엑셀 시트에 표준화잔차(standardized residual)를 저장하려면 이 옵션을 선택하십시오. (저장될 변수 이름: PoisReg_stdResid)
    • 스튜던트화잔차: 엑셀 시트에 스튜던트화잔차(studentized residual)를 저장하려면 이 옵션을 선택하십시오. (저장될 변수 이름: PoisReg_studResid)
    • 선형예측값: 엑셀 시트에 선형예측값(linear predictor)를 저장하려면 이 옵션을 선택하십시오. (저장될 변수 이름: PoisReg_LinPred)
    • 해트 행렬의 대각원소: 엑셀 시트에 해트 행렬의 대각원소(diagonal of hat matrix)를 저장하려면 이 옵션을 선택하십시오. (저장될 변수 이름: PoisReg_HatValue)
    • 쿡의 거리: 엑셀 시트에 Cook 거리(Cook’s distance)를 저장하려면 이 옵션을 선택하십시오. (저장될 변수 이름: PoisReg_CookDist)
  7. User interface: 변수선택 탭
    • 
       	
    • 변수선택
    • - 포아송회귀분석 수행 중 변수선택과정을 포함하기 위해서는 변수선택 옵션을 선택하십시오. - 변수선택방법으로는 ‘전진선택법(forward selection)’, ‘후진제거법(backward elimination)’, 또는 ‘단계별선택법(stepwise regression)’을 결정할 수 있습니다. - 전진선택법은 최종모형에 선택된 k개의 설명변수들 중에서 종속변수에 영향을 가장 미칠 것 같은 변수부터 하나씩 포함하면서 j(<=k)개의 변수를 선택하는 방법입니다. - 후진제거법은 최종모형에 선택된 k개의 설명변수들 중에서 종속변수에 영향을 가장 작게 미칠 것 같은 변수부터 하나씩 제거하면서 j(<=k)개의 변수를 선택하는 방법입니다. - 단계별선택법은 전진선택법과 후진제거법을 번갈아 수행하여 j(<=k)개의 변수를 선택하는 방법입니다. - 설명변수 창에는 최종모형에서 선택된 변수들이 나열되어 있으며, 이 중 변수선택과정과 상관없이 모형에 항상 포함되어 있어야 하는 변수는 고정변수 창으로 이동시켜야 합니다. 즉, 고정변수 창에 포함된 변수들은 변수선택과정과 상관없이 항상 모형에 포함되어 분석됩니다. - 모든 변수선택의 과정은 AIC를 기반으로 하고 있습니다.
  8. 결과출력창 해석
    •  	
    • Data Structure: 전체 관측치 수(Number of observations), 전체변수의 수(Number of total variables), 분석에 사용된 변수의 수(Number of used variables)를 나타냅니다.
    • Variable List
    • - 양적변수(Quantitative variable)와 질적변수(Qualitative variable)로 선택된 변수들 중 분석에 사용된 변수를 나타냅니다. - 질적변수로 포함된 변수는 무조건 문자형변수로 변환되어 분석에 사용됩니다. - 문자형변수는 양적변수로 선택될 수 없으며, 선택된 경우 분석에서 제외됩니다.
    • Analysis Description
    • - 종속변수(Dependent variable), 설명변수(Explanatory variable), 오프셋변수(Offset variable), 상수항포함 여부(intercept included), 과분산모형 여부(Overdispersion), 연결함수(Link function), 변수선택 여부(Variable selection)를 나타냅니다. - 변수선택 옵션을 선택한 경우, 변수선택 방법(Method for variable selection)과 고정변수(Fixed variable for variable selection)가 표시됩니다.
    • Coefficient Estimates
    • - 설명변수의 모수 추정치를 나타냅니다. - 모형적합과 관련된 여러가지 측도로 이탈도(deviance), Akaike information criterion(AIC), 모수추정을 위해 반복한 수(Number of Fisher Scoring iterations)를 나타냅니다.
    • ANOVA Table
    • - 분산분석표를 출력합니다. - Type I 제곱합인 경우 영모형(Null model)과의 자유도 차이(DF), 영모형과의 이탈도 차이(Deviance), 잔차제곱합의 자유도(Residual DF), 이탈도(Residual Deviance), 유의확률(P-value)를 나타냅니다. - Type II, III 제곱합인 경우 회귀제곱합의 감소량(SS), 영모형과의 자유도 차이(DF), F 통계량(F-value), 유의확률(P-value)을 나타냅니다.
    • Model Fitness Measurements: 이탈도(Deviance), -2*로그우도값(-2*log-likelihood), Akaike information criterion(AIC), BIC 등 모형의 적합도를 나타내는 여러 값들을 표시합니다.
    • Goodness of Fit Test(Likelihood Ratio Test)
    • - 상수항만 포함된 영모형(Null Model)과 사용자에 의해 정의된 모형(Proposed Model)에 대한 우도비검정(Likelihood ratio test) 결과를 나타냅니다. - 각 열은 오차제곱합의 자유도(residual DF), 회귀제곱합(RSS), 두 모형의 자유도의 차이(DF), 두 모형의 회귀제곱합의 차이(Sum of Square), 유의확률(Pr(>Chi))을 나타냅니다. - 상수항만 포함된 모형과 상수항이 포함되지 않은 모형의 경우 적합도 검정을 지원하지 않습니다.
    • K-fold Cross Validation
    • - 사용자에 의해 지정된 K값에 따른 교차검증 결과를 나타냅니다. - 각 열은 평균 제곱근 오차(RMSE;Root Mean Square Error), 설명력(Rsquared), RMSE의 표준편차(RMSESD), 설명력의 표준편차(RsquaredSD)를 나타냅니다.
    • Graphs for Regression Diagnostics
    • - Residual vs Fitted plot: 종속변수와 설명변수 사이의 선형성을 시각적으로 확인 가능합니다. 잔차와 적합값 사이에 일정한 패턴을 보이지 않아야 합니다. - Normal Q-Q plot: 잔차가 정규성을 따르는지 시각적으로 확인 가능합니다. 즉, 45도 기준선에 점들이 분포되어 있으면 정규성을 만족하는 것입니다. - Scale-Location plot: 종속변수의 등분산성을 시각적으로 확인 가능합니다. 점들이 일정한 패턴을 보이지 않아야 합니다. - Cook's distance plot: 이상치(outlier)를 시각적으로 확인할 수 있습니다. 그래프에 표시된 숫자는 이상치로 의심되는 관측값의 지수(index)입니다. - Residuals vs Leverage plot: 지렛점(leverage)은 설명변수가 얼마나 극단에 치우쳐 있는지 보여주는 값이며, 이상치를 시각적으로 확인 할 수 있습니다. 숫자가 표시된 관측치는 이상치를 가지는 후보로 고려해 볼 수 있습니다. - Cook's distance vs Leverage plot: 쿡의 거리와 지렛점의 산점도 그림으로 (0,0)으로 부터 멀리 떨어져 있을수록 이상치를 가지는 후보로 고려해 볼 수 있습니다.
    • Test for Overdispersion
    • - 'true dispersion is greater than 0'의 대립가설에 대한 검정결과를 나타냅니다. - 과분산 모수 추정값(Dispersion), 검정통계량(Z-value), 유의확률(P-value)를 나타냅니다.
    • Variable Selection
    • - Process of Variable Selection: 변수선택의 과정을 나타냅니다. - 각 단계(step)에서는 현재 모형과 그에 따른 AIC가 표시되고, 변수가 추가(+), 제거(-)되거나 혹은 현재 모델을 유지하였을 때의 AIC와 현재 모형과의 자유도의 차이(DF)를 나타냅니다. - AIC를 기준으로 오름차순으로 표가 정리되며, AIC가 가장 작은 모형을 그 단계의 최적모형으로 선택합니다. - 현재 모형이 최적모형이 될 때 까지 단계를 반복합니다. - Result of Variable Selection: 변수선택 초기 모형(Initial Model)과 최종 모형(Final Model)을 나타냅니다.
  9. Warning 메세지
  10. * 종속변수가 양적변수가 아닌 경우 아래의 메시지와 함께 분석이 종료됩니다 (Error: Dependent variable should be numeric. Analysis has been stopped.)
    * 종속변수에 음수가 포함되어 있을 경우 아래의 메시지와 함께 분석이 종료됩니다 (Error: Dependent variable should be non-negative numeric. Analysis has been stopped.)