통계공부/Stata

[Stata] 상관분석 관련 명령어: corr, pwcorr (+엑셀로 상관분석표 정리하기)

대학원생A씨 2020. 4. 18. 09:31
반응형

지금까지 Stata의 기본 명령어와 카이제곱/t-test/분산분석(ANOVA) 관련 명령어를 알아보았다. 이에 이어, 이번 포스팅에서는 상관분석과 관련한 stata 명령어를 알아볼 것이다. 논문의 연구결과 부분을 보면, 기초 통계로 상관분석표를 제시하는 경우가 많다. 오늘은 이러한 상관분석을 진행할 수 있는 stata 명령어를 stata의 lifeexp 데이터를 통해 알아보고, 추가적으로 상관분석표를 정리할 수 있는 팁을 소개하고자 한다.

 


1. corr

corr 변수명1 변수명2 : 변수1과 변수2의 상관계수를 산출해내는 명령어
corr 변수명1 변수명2, m cov: m은 기초통계량, cov는 공분산을 산출하는 명령어

이번 포스팅에서도 stata에 기본적으로 내장되어 있는 lifeexp 데이터를 통해 설명을 하고자 한다. 

sysuse lifeexp

 

lifeexp 데이터에는 region, country, popgrowth, lexp, gnppc, safewater의 총 6가지 변수가 있다. 이 중 출생시 기대수명을 뜻하는 lexp와 1인당 GNP를 저장한 gnppc의 상관계수를 알아보도록 하자. 이를 위한 명령어는 다음과 같다.

 

corr lexp gnppc

corr lexp gnppc 실행결과 화면

명령어와 분석결과를 보면 알 수 있듯이, corr이라는 명령어는 뒤에 오는 변수들의 상관계수를 구해준다. 예시로는 2개의 변수만을 제시하였지만 3개 이상의 변수를 투입해도 변수들 간의 상관계수를 출력해준다.

 

corr 뒤에 변수를 3개 이상 적어도 된다.

 

corr 명령어에는 option이 몇 가지 있는데 그 중에서 많이 쓰이는 means와 covariance 옵션에 대해 설명하고자 한다. 먼저 means는 줄여서 m으로 표시해도 되며, 변수(들)의 평균과 표준편차, 최솟값과 최댓값을 분석결과에 추가적으로 제시해준다. 다음으로 covariance는 줄여서 c 또는 cov라고 입력해도 되며, 공분산을 제시해주는 옵션이다. 여러 개의 옵션을 동시에 입력해도 분석이 진행되니 다음과 같이 command를 입력해보자.

 

corr lexp gnppc, m cov

위의 사진을 보면, 위의 네모칸에는 lexp gnppc 두 개 변수의 기초통계가 제시되어 있다. 그리고 아래 네모칸에는 lexp gnppc 변수의 공분산이 제시되어 있다. covariance 옵션을 쓰면 상관계수 값은 나오지 않으니, 상관계수가 궁금하다면 covariance 옵션을 지우고 명령어를 실행하면 된다.

 

 

2. pwcorr

pwcorr 변수명1 변수명2, sig: 변수간 상관계수를 구해주며, sig 옵션은 유의도를 제시해준다.
pwcorr 변수명1 변수명2, star(.001): 상관계수 중 유의도가 .001 미만인 경우 별 표시가 뜬다.

 

사실 앞선 corr 명령어보다는 거의 pwcorr 명령어를 쓰게 될 것이다. 앞선 명령어와 마찬가지로 pwcorr 역시 상관계수를 산출해주는 명령어로, 위에서는 변수 2개만을 써놓았지만 3개 이상의 변수를 투입하여도 무방하다. pwcorr은 좀 더 많은 옵션들이 가능한데, 그 중에 대표적으로 많이 쓰이는 2가지를 위에서 언급하였다. 먼저 sig라는 옵션은 변수들간 상관계수의 유의도를 표시해주는 옵션이다. 

빨간 네모 부분이 유의도이다.

이와 같이 상관분석에서는 각 상관계수의 유의도를 확인하는 것이 필요하다. 실제 논문을 읽어보면 알겠지만, 상관분석표를 보면 상관계수에 별 표시(*)가 붙어있는 것을 볼 수 있다. 그리고 별 표시에 대한 설명으로 아래 *p<.05, **p<.01, ***p<.001이라는 note를 본 적이 있을 것이다(가끔 †p<.10이라는 표시도 있긴 하지만, 이는 추천하지 않는다). 

상관분석표 예시(출처: Beyens & Beullencs, 2017)

사실 상관분석표뿐만 아니라 많은 통계분석 결과표에서 별 표시를 띄우는데, 이는 해당 통계치의 유의도를 직관적으로 볼 수 있도록 표시하는 방법이다. 그런데 상관분석표에서는 변수들 간의 상관계수가 상당히 많기 때문에(보통은 아무리 적어도 변수가 8개 이상은 들어가는데, 이 경우만 하더라도 상관계수는 28개가 있다), 일일히 각 상관계수마다 유의도를 확인하여 별 표시를 하는 것이 귀찮고 헷갈릴 때가 있다. 이를 도와주는 옵션이 바로 star로 star 옆 괄호안에 유의도를 넣어주면, 이에 해당하는 상관계수 옆에만 별 표시를 띄어준다. 말로 써놓으면 복잡하니 실행 결과를 보도록 하자.

 

앞선 popgrowth와 gnppc의 상관계수 유의도는 .004로 .001보다 크기 때문에, popgrowth와 gnppc의 상관계수를 제외한 lexp-popgrowth / lexp-gnppc의 상관계수 옆에는 별 표시가 붙어있는 것을 확인할 수 있다. 이번에는 .001를 .01로 바꿔보자.

 

옵션을 .01로 바꾸니 모든 상관계수에 별이 뜬 것을 확인할 수 있다.

 


마지막으로 엑셀을 이용하여 상관분석표를 손쉽게 정리할 수 있는 방법을 소개하고자 한다. 이는 개인적으로 사용하고 있는 방법이기에, 본인에게 다른 방법이 더 편하면 그 방법을 유지하여도 전혀 상관 없다.

 

1) 상관분석 결과 복사하기

상관분석 결과를 ctrl+C한다.

2) 복사한 내용을 엑셀에 붙여넣기: 텍스트 마법사 사용 옵션 활용

엑셀에서 ctrl+V한 후, 붙여놓기 옵션에서 텍스트 마법사 사용 선택. 너비가 일정함 선택 후,
데이터 미리 보기에서 선을 조정하여 간격을 맞추고, 열 데이터 서식은 텍스트나 일반으로 맞춘 후 마침 버튼 클릭.

 

3) 엑셀에서 소수점 둘 째자리로 맞춰주기

[왼쪽] 빨간 네모를 클릭하여 소수점 둘 째자리로 맞춰주고, [오른쪽] 표시 형식으로 들어가 일의 자리 0을 지워준다(형식을 .00으로 입력).

 

4) 분석결과 표에 붙여넣기

정리된 형식을 표에 붙여넣고, stata에서 star 옵션을 활용하여 별을 붙여주어 정리하면 끝!

 

반응형