사회통계(10): 교차표 분석의 기초

[문제 1] 미국 동부 주요 대도시에 근무하는 경찰관 남녀의 승진 사례이다. 경찰관 1,200명 중 960명은 남자, 240명은 여자이다. 지난 2년 동안 324명이 승진하였다. 다음 표에 과거 2년간 경찰관의 승진 현황이 제시되어 있다. 승진 결과를 검토한 다음, 여경위원회는 240명의 여경 중 36명만이 승진하였다는 사실을 근거로 여성차별이 있다고 문제를 제기했다. 경찰인사관리위원회는 여성이 상대적으로 적게 승진한 것은 여성차별 때문이 아니라 여성 수가 상대적으로 적기 때문이라고 주장했다. 과연 누구의 주장이 옳을까? 통계학은 이 첨예한 갈등을 합리적으로 해결하는 데 기여할 수 있을까?

이 교차표를 접근하는데는 두 가지 방법이 있다. 이 교차표가 모집단의 수치를 보여주는 경우 조건부 확률(conditional probability)을 사용하면 되고, 이 교차표가 하나의 표본에 관한 정보로 간주된다면 카이자승() 을 가지고 가설 검증을 하면 된다.

어느 데이터가 모집단(population)에 관한 것인가 혹은 표본(sample)에 관한 것인가는 근본적으로 연구자가 어떤 대상에 대해 주장을 제시하고 싶은가에 달려 있다. 예컨대 이 사례에서 연구자가 해당 경찰청의 과거 2년 동안에 발생한 승진 케이스들에 대해서만 성차별이 존재하는지를 따지겠다면, 이 데이터는 전수 데이터로 모집단에 관한 것이라고 간주될 수 있다. 반면에 연구자가 해당 경찰청의 데이터를 가지고 미국의 전체 경찰이나 미국 사회 전체에 존재하는 성차별에 관해 따지겠다면 이 데이터는 표본에 관한 것이라고 간주되어야 한다.

이 교차표를 가지고 그 두 접근을 모두 검토해 보자. 먼저 조건부 확률부터 논의하겠다.

최근 조건부 확률은 그 어느 때보다도 중요한 지식이 되었다. 현업에서 가설 검증보다는 예측이 훨씬 더 많이 요청되고 있으며, 예측에 널리 사용되는 베이즈 추론(Bayesian inference)의 논리적 토대가 조건부 확률이다. 현업에서 스스로 예측을 하거나, 최소한 남이 하는 예측을 이해하고 싶다면, 조건부 확률에 관련된 개념들을 꼼꼼하게 익혀둘 필요가 있다.

확률을 다룰 때는 먼저 사건을 정의해야 한다.

M = 경찰관이 남성; W = 경찰관이 여성; A = 경찰관이 승진;  =  경찰관이 승진하지 못함

= 무작위로 뽑힌 경찰관이 남성이고 승진;  = 무작위로 뽑힌 경찰관이 남성이고 승진하지 못함; = 무작위로 뽑힌 경찰관이 여성이고 승진; = 무작위로 뽑힌 경찰관이 여성이고 승진하지 못함

위의 표는 아래 확률들을 가지고 승진에 관한 결합확률표(joint probability table)로 전환될 수 있다. 

이러한 확률들은 두 사건의 곱사건의 확률로서 결합확률(joint probability)라고 부른다.

결합확률 주변에 있는 값들은 각 사건의 확률이다. 즉, P(M) = 0.80; P(A) = 0.20; P(A) = 0.27; P() = 0.73이다. 이러한 값들을 주변확률(marginal probability)이라고 부른다. 결합확률표에서 관련된 행이나 열의 결합확률을 합하면 주변확률을 구할 수 있다. 예컨대 이다. 이점을 잘 기억해두면 베이즈 추론에 도움이 될 것이다.

결합확률과 주변확률을 가지면 조건부 확률(conditional probability)을 구할 수 있다.  예컨대 어떤 경찰관이 남성일 경우 그가 승진할 확률, 을 구해보자.

도수를 사용해서 구하면, 288/960=0.3이 될 것이다. 확률을 이용해서 구해도 0.24/0.80=0.3으로 동일한 값이다. 확률을 이용한 조건부 확률의 계산을 일반화하면 다음과 같다.

결합확률을 주변확률로 나눈 값이다. 다른 말로 주변확률에 대한 결합확률의 비율이다.

경찰관이 여성인 경우 승진할 확률은,

이다.

즉, 남성경찰관의 승진확률은 0.3으로 여성경찰관의 승진확률 0.15의 두 배이다. 이 결과는 경찰인사관리위원회보다 여경위원회의 주장을 지지한다.

만약 이 데이터가 표본이라면 조금 다른 방식으로 접근할 수 있다. 교차표에 나타난 차이가 우연적 결과이다 혹은 승진에 관해서 성차별이 없다(통계학적으로 표현하면, 경찰관의 성별과 승진이 독립 사건이다) 라는 가설을 검증하는 방법이다. 이를 영가설(null hypothesis)이라고 하는데, 만약 영가설이 기각되면 대립가설(alternative hypothesis)을 수용하게 된다. 이는 바로 가설 검증(hypothesis testing)이다.

만약 경찰관의 성별과 승진이 독립 사건이라면 결합확률표는 어떤 모습일까? 남자 경찰관 중 승진자 비율, 여성 경찰관 중 승진자 비율, 그리고 전체 경찰관 중의 승진자 비율이 같을 것이다(아래 결합확률표 참조).

이를 일반화하여 표현하면 다음과 같다.

이를 도수의 교차표로 나타내려면 각 결합확률이나 주변확률에 총사례수인 1200을 곱하면 된다.

이는 영가설 아래서 얻은 예측값이다. 이 예측값과 실제 관찰값의 차이가 영가설을 기각할 수 있을 만큼 충분히 큰가? 이것을 검증하는 기법이 카이자승 검증( test)이다.

각 셀의 카이자승 값은 그 셀의 관찰값에서 예측값(영가설 아래)을 뺀 값을 제곱한 수를 그 셀의 예측값으로 나누면 된다. 각 셀의 카이자승 값들을 모두 합한 수가 전체 카이자승 값이다.  카이자승 분포()은 아래 그림에서처럼 자유도에 따라 모양이 변한다. (아래 그림은 위키피디아에서 가져왔음.)

Chi-square pdf.svg

교차표에서 자유도를 구하는 공식은 다음과 같다.

위의 사례에서는 자유도는, (2 – 1)(2 – 1)=1이다.

엑셀에서는 바로 카이자승 값을 구할 수 없다. 위 공식들을 이용해서 구해야 한다. 다만 예측값의 교차표를 구하면, CHISQ.TEST 함수를 이용해서 바로 카이자승 값의 p- 값을 구할 수 있다. 아래는 그 두 가지 방법을 모두 이용해 구한 값들이다.

이 교차표의 카이자승 값의 p-값은 영가설을 충분히 기각할 수 있을 정도로 작다. 위에서 조건부 확률을 가지고 얻은 결과를 카이자승 검정을 통해서 다시 확인한 셈이다.

도수의 교차표(cross-table)든, 결합확률표이든 범주형 변수를 분석하는데 대단히 유용한 도구이다. 사회과학에는 범주형 변수들이 많다. 이 기법들을 잘 익혀두면 유용하게 사용할 수 있을 것이다. (윤영민, 2017-08-25)

사회통계(9): 변이를 보여주면 금상첨화

[문제] US Census Bureau가 1996년 조사한 자료(32,561 명)가 아래 링크되어 있다. 미국 UCI의 machine learning 데이터베이스에서 가져왔다. 이 데이터의 첫 열은 응답자의 나이(age)이다. 응답자의 나이에 대한 다음 통계값을 구하라. (어떤 통계 소프트웨어를 사용해도 무방하나 가급적 MS Excel을 사용하기 바람.)

평균, 중앙값, IQR, 분산, 표준편차, 박스 플롯, 첨도, 왜도

데이터: Adult.data 

평균, 중앙값(median) 혹은 최빈값(mode) 같은 중앙집중 경향(central tendency)은 데이터 분석의 출발점으로 충분하다. 그러나 만약 관측값들이 중앙집중 경향을 중심으로 어떻게 변화하는지[즉, 변이(variability)]를 보여줄 수 있으면 금상첨화일 것이다.

데이터 분석에서 변이를 나타내는 도구로는 IQR, 분산, 표준편차, 박스 플롯(box plot), 첨도와 왜도가 자주 사용된다. 기초적인 도구들이지만 잘 사용하면 데이터에 관해 상당한 정도의 스토리를 추가할 수 있다.

(1) IQR(Interquartile Range, 사분위수 범위)는 3사분위수와 1사분위수의 차이()이다. 사분위수란 데이터를 정확히 4등분해주는 수들을 말한다. 3사분위수가 상위 25%, 1사분위수가 하위 25%를 구분해주는 수이니, IQR은 데이터의 중앙 50%의 범위이다. IQR은 극단값들의 영향을 줄이기 위한 변이 척도이다.  IQR은 의외로 활용도가 높다. 기억해둘만한 충분한 가치가 있다.

(2) 분산(variance)은 편차 제곱의 평균이다. 편차란 관측값과 평균의 차이를 말한다. 분산은 모든 관측값을 빠짐없이 투입해서 계산되는 변이 척도이다.

모집단 분산의 공식은 이고, 표본 분산의 공식은 이다.

(3) 표준편차(standard deviation)는 분산의 양의 제곱근이다. 모집단의 표준편차 계산공식은  이고, 표본표준편차의 계산식은 이다. 표준편차는 데이터를 표준화하는데 사용된다. 예컨대 z-값(z-score)은 편차를 표준편차로 나눈 값으로 모든 데이터의 상대적 위치를 표준편차의 배수로 나타내고, 두 변수 x와 y의 공분산(covariance)을 x의 표분편차와 y의 표준편차의 곱으로 나누어 표준화하면, 측정 단위로부터 자유로운 상관계수(correlation coefficient)를 얻는다.

(4) 박스 플롯(box plot)은  중앙값, 3사분위수(), 1사분위수(), 내의 최소값, 내의 최대값, 이렇게 다섯 개의 숫자로 표시한다(아래 그림 참조).

박스 플롯은 이상치(outliers)를 발견하는 용도로 자주 사용된다. 박스 플롯의 상한선과 하한선을 벗어난 데이터는 이상치로 간주된다.

(5) 왜도(skewness)와 첨도(kurtosis)는 분포의 비대칭도를 나타낸다. 왜도는 분포가 어느 쪽으로 얼마나 기울져 있는지를 보여주고, 첨도는 분포가 얼마나 중심에 집중되어 있는지를 보여준다.

왜도와 첨도는 모멘트(moment, 적률)라는 모수를 이용하여 구한다. 모멘트는 분포의 모양을 보여주는 모수(parameter)이다. 통계학으로 세상을 이해하는데 있어 가장 중요한 정보는 확률변수의 분포(distribution)이다. 통계적으로 세상에 대해 설명하거나 예측하려면 확률변수가 어떻게 움직이는가를 파악해야 한다. 확률변수의 움직임은 분포로 나타낸다.

어떤 확률변수의, 분포의 중심이 어디에 있는지, 분포가 얼마나 퍼져 있는지, 분포가 어느 쪽으로 치우져 있는지, 분포가 중심에 얼마나 몰려있는지를 알면 우리는 그 확률변수에 대해 상당히 파악한 셈이다. 모멘트는 그러한 분포의 모습을 알려주는 모수이다.

확률변수 X의 1차 모멘트는 기대값 , 곧, 평균 ()으로, 분포의 중심을 보여준다. 2차 모멘트부터는 중심 모멘트(central moment, 중심 적률)라고 부른다. 확률변수 X의 2차 중심 모멘트(혹은 X의 평균에 대한 2차 모멘트라고도 함)는 분산 으로 분포의 변이(흩어짐의 정도)를 보여준다.

X의 3차 중심 모멘트는, 아래와 같이 분포가 어느 쪽으로 기울어져 있는지, 즉, 왜도를 정의하는데 사용되고, X의 4차 중심 모멘트는 분포가 중심에 얼마나 몰려있는지, 즉, 첨도를 정의하는데 사용된다.

(는 3차 중심 모멘트; 는 표준편차의 3승)

(는 4차 중심 모멘트; 는 표준편차의 4승)

왜도와 첨도의 값은 다음과 같이 해석된다. 왜도가 0이면 자료의 분포가 정규분포처럼 좌우 대칭이고, 양수이면 오른쪽 꼬리를 가진 분포이며, 음수이면 왼쪽 꼬리를 가진 분포이다. 첨도가 3이면 정규분포와 봉우리 높이가 같고, 3보다 크면 정규분포보다 높은 봉우리를 가지며, 3보다 작으면 정규분포보다 낮은 봉우리를 가진다.

엑셀의 추가기능인 KESS를 사용해서 [문제]를 풀어 다음과 같은 결과를 얻었다.

나이 평균(38.58)이 중앙값(37)보다 크고 왜도가 양수이니 그림에서처럼 분포가 오른쪽에 꼬리를 가지고 있음을 알 수 있다. 이는 상한선(3분위수+1.5*IQR)을 벗어나는 나이를 가진 응답자 여러 명이 표시된 박스플롯의 그림과도 일치한다.

나이의 평균에 변이 정보들이 추가되니 표본의 분포에 대해 좀 더 알 수가 있다. 여기서 소개된 변이 척도들을 잘 기억해두면 쓸모가 있을 것이다. (윤영민, 2017-08-25)

사회통계(8): 평균을 알면 통계학이 보인다

[문제 1] 당신이 투자를 했는데, 첫 해는 10%를 벌었고, 둘째 해에는 50%, 셋째 해에는 30%를 벌었다. 그 경우 3년간 당신의 평균 수익률은 얼마인가?

[문제 2] 당신이 경기도 이천에서 차를 몰고 서울 강남을 다녀왔다. 갈 때는 고속도로가 막혀서 평균 속도 70km/h로 갔고 올 때는 막힘이 없어 평균속도 100km/h로 돌아왔다. 그렇다면 당신은 서울을 평균속도 얼마로 다녀왔는가?

[문제 3] 모 대학의 입시에서 논술 채점을 하는데, 한 학생의 답안지를 다섯 명의 교수가 채점한다. 만약 그 점수가, 80, 90, 100, 60, 85였다면 그 학생의 논술 점수는 얼마일까?

평균을 모르는 사람은 없다. 초등학생 저학년 때 산술평균을 배우기 시작해서 고등학생 때까지 가중 평균, 기하평균, 조화평균 따위를 배운다.

그렇다고 사람들이 평균을 제대로 사용하는 것은 아니다. 금융처럼 특수한 영역을 제외하고 일반인들이 산술평균이 아닌 다른 종류의 평균을 사용하는 경우는 거의 없을 뿐 아니라 산술평균이 적합하지 않는 경우에도 그냥 산술평균을 쓰곤 한다.

산술평균은 약점을 많이 가지고 있다. 그래서 통계학에서는 여러 종류의 평균이 사용된다. 평균의 약점을 잘 인식하고 용도에 맞게 적절한 종류를 선택해 사용할 수 있다면 잘못된 숫자로 현실을 왜곡하는 실수를 크게 줄일 수 있을 것이다.

필자가 알고 있는 평균(mean or average)을 곰곰히 생각해보니 다음 7가지이다: 산술평균(arithmetic mean), 절사평균(trimmed mean), 가중평균(weighted mean), 기하평균(geometric mean), 조화평균(harmonic mean), 평방평균(quadratic mean), 이동평균(moving average)

(1) 여러 수의 덧셈이 사용되는 척도나 계산에는 산술평균(arithmetic mean)이 사용된다. 데이터 분석에서는, 아래 공식처럼 관측값을 모두 더 한 다음 관측값의 갯수로 나누면 산술평균을 얻는다.

(2) 그런데 만약 이상치(outliers)가 존재한다면 산술평균은 현실을 왜곡하게 된다. 그 경우 하나의 간단한 해결책은 이상치를 제외하고 나머지 관측값들로만 산술평균을 구하는 것이다. 그것이 위 [문제 3]에서 사용되는 절사평균(trimmed mean)이다. 논술 채점의 경우 가장 후하게 준 점수인 100점과 가장 인색하게 준 60점을 제외하고, 80점, 90점, 85점만 가지고 평균을 낸 85점이 해당 학생의 논술 점수가 된다. 대학 당국은 그렇게 매겨진 점수가 학생의 논술 능력을 잘 반영한다고 믿는다.

(3) 대학생이라면 누구나 가중평균(weighted mean)에 익숙할 것이다. 성적에 민감한 대학생들은 자신들이 받는 평점(G.P.A.)이 어떻게 계산되는 줄 잘 안다. 만약 어떤 학생이 한 학기 동안 3학점 2과목에서 각각 C(2점)와 B(3점)를 받았고, 2학점 2과목을 모두 A(4점), 1학점 2과목도 모두 A(4점)을 받았다면 학기를 망쳤다고 투덜댈 것이다. 학점이 낮은 과목들은 모두 A를 받았지만  높은 학점 2과목에서 낮은 점수를 받았기 때문이다. 평점은 이다. 학점 평균(평점)에서는 각 과목의 학점이 가중치(weight)이다. 과목의 학점을 고려하지 않고 취득 점수의 산술평균을 내면 (2+3+4+4+4+4)/6=3.5이다. 아마도 이 산술평균은 여러 과목에서 A를 받은 이 학생의 기분을 반영할 지는 몰라도 학생의 성취도를 정확히 반영한다고 볼 수는 없을 것이다. 기분은 3.5이고 현실은 3.25이다. 관측값의 비중이 다를 때는 그 비중을 가중치로 반영하는 가중평균을 사용해야 한다. 단순한 산술평균은 현실을 왜곡한다.

(4) 우리가 일상에서 사용하는 척도가 덧셈으로만 이루어져 있지는 않다. 어떤 척도는 곱셈이 사용된다. 이자율, 인구성장률, 경제성장률, 수익률 같은 중요한 지표들이 곱셈을 사용한다. 그 경우에는 기하평균(geometric mean)이 적합하다.

예컨대 위 [문제 1]를 기하평균으로 풀어보자.

3년 동안의 평균수익률은 0.29이다. 만약 산술평균으로 계산했다면 평균수익률은 (1.1+1.5+1.3)/3-1=0.3이 된다. 평균수익률이 실제보다 과대 평가된다.

산술평균은 덧셈용이다. 금융이나 경제에서는 곱셈을 사용하는 지표가 많기 때문에 기하평균이 사랑받는다. (참고: 기하평균은 제곱근을 사용하기 때문에 무리수 값이 나오는 경우가 많다. 과거에 무리수는 수로 인정받지 못하고 도형적인 의미만을 지녔다. 그래서 이름이 기하평균이 되었다.)

(5) 물리량에서도 산술평균은 맥을 못춘다. 속도가 대표적인 경우이다. 속도는 주행한 거리를 소요 시간으로 나누어 도출한다. [문제 2]에서 만약 (70+100)/2=85(km/h)라는 단순 산술평균으로 평균속도를 계산하면 거리와 시간을 무시한 것이 된다. 이천에서 서울 강남까지 왕복했으니 주행거리가 140km(70km*2)였고, 소요 시간은 1.7시간(1+0.7)였다. 140km를 1.7시간으로 나누면 평균속도는 82.35km/h이다.

이런 경우에는 아래 공식의 조화평균(harmonic mean)을 가지고 구할 수 있다.

조화평균을 사용하면 주행거리와 소요 시간을 몰라도 전체 평균속도를 구할 수 있다. 산술평균으로 구한 평균속도보다 다소 느리다.

조화평균은 동일한 금액을 배정하여 여러 가지 상품을 구입할 때 평균 상품 수량을 구하는데도 쓸 수 있다. 예컨대 같은 예산을 배정하여 사과 100개와 배 50개를 구입한다면 구입한 과일은 평균 몇 개인가? 약 67개이다.

( ). 산술평균으로 계산하면 (100+50)/2=75이다. 75개는 예산과 상품가격을 무시해서 나온 잘못된 결과이다.

조화평균은 동일한 거리 혹은 동일한 금액이라는 조건에서 비중(속도나 가격)이 다른 여러 가지 요소를 결합하는 경우에 있어 평균을 도출하는데 사용된다. 만약 동일한 거리 혹은 동일한 금액이라는 조건이 충족되지 않으면 위의 공식을 바로 사용할 수 없다. 가중치를 주어야 하기 때문이다. (예를 들어, 전남 장성에서 기차로 서울(용산)을 가는데, 100km 떨어진 익산까지는 ITX/새마을(시속 120km)로 가고, 익산에서 서울까지 250km는 KTX(시속 250km)로 갔다면, 장성에서 서울까지 간 평균속도는 얼마인가와 같은 문제에는 조화평균 공식을 바로 적용할 수 없다. 거리 100km와 250km가 가중치로 고려되어야 한다.)

(6) 통계학에서는 평균을 무척 많이 사용한다. 평균 자체도 대표값으로서 중요한 정보이지만, 평균으로부터 도출된 분산(variance)도 변이(variability)를 보여주는 유용한 도구이다.  분산은 각 관측값이 산술평균으로부터 떨어진 거리인 편차(difference)를 제곱한 값들의 평균이다. 다시 말해 분산은 편차의 평방평균(quadratic mean)이다. 편차의 평균은 0이기 때문에 편차를 제곱해서 사용한다. 분산의 양의 제곱근이 표준편차(standard deviation)이다.  분산(모집단 분산)을 계산하는 공식은 아래와 같다.

(는 모집단의 평균)

(7) 현실에서 기하평균과 조화평균은 그다지 자주 사용되지 않는다. 아마도 그것들보다 훨씬 자주 사용되는 또 다른 종류의 평균은 이동평균(moving average)이라는 도구일 것이다. 금융권 종사자나 어느 분야에 있던 시계열 데이터를 다루는 사람이라면 이동평균에 익숙하리라.

아래 그림에는 Amazon.com의 주가 변동이 제시되어 있다. 이미 이 그래프도 혼란스럽지만 만약 주가 변동이 주 단위나 일 단위로 표시된다면 더욱 혼란스러울 것이다. 그렇게 혼란한 그래프 대신 보다 매끄러운 그래프로 주가변동의 추세(아마도 그것이 당신이 원하는 것일 게다.)를 보여주는 도구 중 하나가 이동평균이다.

Image result for stock price

이동평균은 아래와 같은 공식으로 구해진다.

 (T는 부분집합의 크기, 는 관측값)

공식이 복잡해 보이지만 사실은 간단한 계산이다. 주가에 관한 이동평균을 논의한다고 치자. T는 2일, 5일, 10일 등 평균을 내고 싶은 단위 기간이다. 선택한 단위 기간에 따라 2일 이동평균, 5일 이동평균, 10일 이동 평균 등을 계산할 수 있다.

예컨대 10일 동안의 특정 주식의 주가(일일 종가)가 아래와 같다고 하자.

2일 이동평균을 계산하면 다음과 같이 9개 값이 나온다.

(1000+1050)=1025, (1050+1100)=1075, (1100+1200)=1150, (1200+1150)=1175, (1150+1200)=1175, (1200+1250)=1225, (1250+1100)=1175, (1100+1200)=1150, (1200+1250)=1225

7/15 것은 이동평균이 없고, 7/16 것은 7/15와 7/16 것을 평균하여 1025, 7/17 것은 7/15 것을 빼고, 7/17 것을 넣어 평균하여 1075, 7/18 것은 7/16 것을 빼고 7/17과 7/18 것을 평균하여 1150….이런 식으로 계산하면 된다. 새 날짜의 관측값이 추가되면, 오래 된 날짜의 관측값이 빼는 방식으로 고정된 주기로 계속 평균을 계산해 간다.

이러한 이동평균을 사용하면 주가변동을 훨씬 매끄러운 모습의 추세선으로 표시할 수 있다. 아래는 MS 엑셀의 데이터분석 기능을 이용해서 위 사례의 이동평균을 구하고 그래프로 나타냈다.

이 사례에는 단순이동평균(Simple Moving Average, SMA)를 적용하였는데, 지수이동평균(Exponential Moving Average, EPA)와 같은 다른 변종도 있다. 여기서는 EPA에 대해서만 약간 설명하겠다. 다양한 이동평균에 관심있는 독자는 따로 학습하기 바란다.

실제로 SMA와 EPA는 큰 차이가 나지가 않는 경우가 많다. 다만 EPA는 단기 변동성을 포착하기 위해 최근 값들에 대해 가중치를 주고자 한다. EMA를 구하는 식은 아래와 같다.

여기서 P는 가격(Price), T는 기간(time period)이다. 이 공식을 풀어서 말하자면, 금일 EMA는, 금일 가격(today’s price)에 가중치를 곱한 값과, 전일 EMA에 (1-가중치)를 곱한 값의 합이다. 가중치는 이다. T가 분모에 들어 있으니 기간이 커질수록 가중치가 작아진다. 이는 기간이 클 경우 SMA와 EMA가 별로 차이가 없음을 함축한다. EMA를 계산하려면 최초의 EMA()로 시작해야 하는데, 통상 그것은 기간  T의 SMA이다.

위의 사례를 가지고 2일 지수이동평균을 구해보면 아래와 같다.

7월 16일: 1025(이동평균과 동일); 7월 17일: 1075(=1100*0.666667+1025*(1-0.666667)); 7월 18일: 1158.333(1200*0.666667+1075*(1-0.666667)); 7월 19일: 1152.778(=1150*0.666667+1158.333*(1-0.666667))….나머지는 아래 표의 D열을 참조.

빅데이터 시대에는 여러가지 종류의 평균이 쓸모가 많다. 설문조사와 같은 횡단적(cross-sectional) 데이터를 주로 사용하는 사회학 연구에서 이동평균은 아주 드물게 사용되었다. 그러나 요즘은 사회현상에 대한 종단적(longitudinal) 데이터가 흔해졌다. 사회학 연구에도 이동평균과 같은 도구를 쓸 일이 많아졌음을 의미한다. 하물며 현업에서 종단적 데이터를 다루는 도구의 필요성이 높아졌음은 말할 나위도 없으리라. (윤영민, 2017-08-24)

사회통계(7): 통계학 교육의 전복이 요구된다

대학에서 사회통계 혹은 통계학을 가르치는 가장 중요한 이유는 학생들에게 데이터를 전문적으로 분석할 수 있는 능력을 갖추어 주기 위해서이다. 그것은 과거에도 그랬고, 현재도 그러하며, 미래에도 그럴 것이다. 그런 관점에서 보면 사회통계 교육에 빨강 불이 켜졌다. 통계학 교육이 전복되어야 한다는 과격한 표현이 어울릴 정도로 극적인 변화가 필요하다는 말이다.

지금까지 사회통계학이나 통계학 교육의 중점은 모수 추정과 가설 검증에 있었다. 작은 규모의 표본조사를 통해 데이터를 수집하고 그것으로 모집단의 모수를 추정하거나 가설을 검증하는 방식이었다. 따라서 기술통계(descriptive statistics)는 고급의 통계 기법을 배우기 위한 예비 지식 혹은 보조 수단 정도로 취급했다. 그런 방식으로는 모수 추정이나 가설 검증이 불가능하다고 여겼기 때문이다. 학생들은 물론이고 교수자도 기술통계를 진지하게 다루지 않았다.

그런데 시대가 바뀌었다! 정확히 말하자면, 데이터 환경이 바뀌고 분석 도구가 바뀌었다. 대량의 데이터가 이용가능하고 엄청난 컴퓨터 자원에 손쉽게 접근할 수 있게 되었다. 한 마디로 ‘빅데이터’ 시대가 도래했다!

게다가 현실에서는 모수 추정이나 가설 검증이 아니라 예측이 대세가 되고 있다. 집단 수준의 예측 뿐 아니라 개인 수준의 예측까지 일반적이 되고 있다.

이런 상황에서 종래의 모수 추정이나 가설 검증 기법들은 불필요하거나 적합성을 잃고 있다. 표집 데이터가 아니라 전수 데이터가 이용 가능한 경우가 크게 늘었고, 그런 경우에는 모수 추정이나 가설 검증이 불필요하다. 또한 현재의 통계 분석 도구들은 대부분 표본의 크기가 2천이나 3천 정도임을 가정하고 개발되었다. 예컨대 널리 사용되는 카이자승이나 p-값이 그러하다. 그런 도구들은 사례수가 크게 많아지면 검정력을 상실한다.

따라서 통계학 혹은 통계학 교육의 무게 중심은 기술통계로 이동되어야 한다. 그것이야말로 학생들이 사회에 나가면 널리 사용할 도구들이기 때문이다. 기술통계에 대한 교육의 강화 뿐만이 아니다. 보다 더 큰 관점에서 볼 때 사회통계 교육에 다음과 같은 변화가 필요하다고 판단된다.

  1. 데이터(data)에 대한 개념적 인식 전환이 요구된다.
  2. 기술통계(descriptive statistics)에 대한 교육이 크게 강화되어야 한다.
  3. 시각화(visualization) 교육이 크게 강화되어야 한다.
  4. 확률이론(probability theory)과 확률분포(probability distribution)에 대한 교육이 크게 강화, 확대되어야 한다.
  5. 베이즈 추론(Bayesian inference)에 대한 교육이 확대 혹은 추가되어야 한다.
  6. 상관성 척도(measurement of relations)들에 대한 교육이 크게 확대되어야 한다.
  7. 회귀분석의 적합(fitting regression models) 방법을 다양화해야 한다.
  8. 데이터 마이닝(data mining)과 예측 분석(predictive analytics)이 추가되어야 한다.

데이터에 대한 개념적 인식 전환에 관해서는 앞선 포스팅에서 이미 논의했으니, 여기서는 기술통계에 대한 교육을 강화해야 한다는 점에 대해 집중적으로 논의해 보자.

변하는 사회현상(변수라고 하자)은 무엇이나 분포(distribution)를 가진다. 통계학은 그 분포를 정확하고 간명하게 묘사할 수 있게 해준다. 평균, 중앙값, 최빈값과 같은 대표값은 변수의 분포의 중심이 어디에 있는 지를 보여주고[그 때문에 중앙 집중 경향(central tendency)이라고도 불린다], 범위, 표준편차, 분산, IQR(사분위 범위) 같은 산포도는 변수가 중앙 집중 경향을 중심으로 얼마나 퍼져 있는지를 보여주며, 왜도(skewness)나 첨도(kurtosis) 같은 비대칭도는 변수의 분포가 어느 쪽으로 치우쳐 있는지 혹은 얼마나 중심에 집중되어 있는지를 보여준다.

Image result for moving averages

이 중 가장 중요한 척도는 평균이다. 평균은 범주형 변수에는 사용될 수 없지만 가장 널리 사용되는 척도이다. 그리고 평균은 데이터의 성격과 용도에 따라서 산술평균, 가중평균, 절삭 평균, 기하평균, 조화평균, 평방평균, 이동평균 등 다양한 종류가 사용된다.

그리고 평균은 거의 모든 고급 통계 기법들의 출발점이다. 분산분석, 상관분석, 회귀분석 등은 평균으로부터의 거리, 즉, 편차를 가지고 하는 게임이라고 해도 과언이 아니다. 평균에 대해서만도 적어도 한 주 정도의 수업이 필요하리라 생각된다. (참고로 평균에 관해 예리한 지식을 갖고 있으면 동료들에게 깊은 인상을 줄 수 있을 것이다.)

그러나 기술통계가 위와 같은 한 변수의 분포에 그치는 것은 아니다. 우리가 관심을 갖는 사회현상이 하나의 변수가 아니라 두 변수 혹은 여러 개 변수 사이의 관계일 때도 많다. 승진에 있어서의 성차별, 교육 수준에 따른 소득분포, 특정 지역 출신에 대한 차별, 부모의 사회계층과 자식의 사회계층, 학습 시간과 성적, 연령에 따른 투표성향  등 사실 사회과학의 관심 대상은 변수 사이의 관계인 경우가 많다.

따라서 기술통계에는 변수간의 관계를 보여주는 도구들도 포함되어야 한다. 공분산, 상관계수, 교차표, 결합확률, 조건부 확률, 승산(odds)과 승산비(odds ratio) 등이 그런 기술통계 도구들이다.

Image result for odds

별도로 포스팅 하기 위해 현재의 논의에서는 제외했지만, 시각화(visualization)는 기본적으로 기술통계에 속한다. 기술통계량과 시각화를 합친 기술통계에 대한 강의만으로도 한 학기 수업을 할애해야 할 것으로 생각된다.

그것은 충분히 가치 있는 교육이 될 것이다. 기술통계 도구들을 제대로 활용할 수 있어야 한다는 시대적 요청에도 맞고, 상위 과목이 되는 고급통계, 데이터 마이닝, 예측분석의 효과적인 교육을 위해서 탄탄한 기초를 필요하다는 측면에서도 그렇다.

더 이상 기술통계를 저급한 지식으로 취급하거나 고급 통계를 위한 기초나 보조 수단으로만 인식되어서는 안 될 것이다. 어쩌면 대부분의 업무에서 기술통계는 추리통계보다 훨씬 중요한 통계 지식이 될 것이다.  (윤영민, 2017-08-22)

사회통계(5): 변수, 분석단위, 그리고 측정

[문제 1]  직업, 성별, 종교, 댓글(수), 좋아요(수), 회원탈퇴 고객(수), 투자액 등의 공통점은 무엇일까?

[문제 2] 데이터 수집 단위(unit of data collection)와 분석 단위(unit of an alysis)는 어떻게 다른가?

[문제 3] 남녀간의 사랑은 측정될 수 있을까?

[문제 1]에 대한 답은 변수(variable)이다. 우리가 주목하는 현상 혹은 사건을 변수라고 한다. 그 현상이나 사건이 변하기 때문이다. 변하지 않는 현상(상수, constant)는 우리의 관심 대상이 아니다. 우리는 현상이나 사건이 어떻게 변하는가를 탐구한다. 그것의 패턴을 찾아내고, 그것이 다른 변수(들)와 갖는 관계를 발견하려고 한다.

사회분석을 하려면 데이터가 있어야 한다. 데이터는, 설문조사 데이터처럼 연구자에 의해 수집되기도 하고 POS나 센서 데이터처럼 기계적으로 수집되기도 한다. 설문조사의 경우 데이터 수집 단위(대상)가 개인(들)일 수도 있고 기업처럼 사회조직(들)일 수도 있다. 소매점의 경우 POS 데이터는 데이터 수집 단위가 개인(고객)이다.

수집된 데이터가 분석될 때는 먼저 분석 단위가 결정되어야 한다. 분석 단위란 연구자가 분석하려는 대상을 말한다. 세상에는 연구자의 관심만큼이나 다양한 종류의 분석 단위가 존재한다. 그것은 개인일 수도 있고, 조직이나 커뮤니티일 수도 있으며, 국가(나라) 혹은 지역일 수도 있다. 뿐만 아니라 웹페이지의 클릭 스트림(click stream), SNS의 친구관계, 판매된 상품, 신문의 사설 혹은 기사 등도 분석 단위가 될 수 있다.

위 사진은 치맥집이다. 치맥집에 대해 사회조사를 한다면 치맥집(들)이 분석 단위가 될 수도 있고 고객(들)이 분석 단위가 될 수도 있다. 만약 연구자의 관심사가 고객들의 소득, 나이, 직업, 성별, 주량, 안주 선호, 친구 어울림 방식(혼술, 집단 크기 등), 지출 등이라면 분석 단위는 개인(고객)이 될 것이고, 만약 연구자의 관심사가 손님 수, 남녀 고객 비율, 총매출, 병맥주 판매량, 생맥주 판매량, 치킨 판매량, 수익, 위치, 규모 등이라면 분석 단위는 레스토랑이 될 것이다. 고객의 지출과 레스토랑의 매출은 분석 단위가 다르지만 둘 다 POS 데이터를 사용할 것이다.

연구자는 먼저 자신의 연구 관심에 따라 분석 단위를 먼저 분명하게 파악하고, 그에 맞추어 데이터를 수집하거나 조정해야 한다. 때로는 수집된 데이터를 분석 단위에 맞게 조정하기가 불가능한 경우도 있다.

특히 사회 집단 단위에서 수집된 데이터는 개인 단위 분석에 사용될 수 없다. 만약 그렇게 사용될 경우 소위 생태학적 오류(ecololgical fallacy)에 빠지게 된다. 예컨대 치맥집 단위로 수집된 데이터를 볼 때 고객 중 남성 비율이 높은 치맥집들에서 병맥주 판매 비중이 크다고 해서 그 데이터로부터 남성은 생맥주보다 병맥주를 선호한다고 추론할 수는 없다. 남성 고객의 비중이 큰 치맥집에 온 여성 고객들이 병맥주를 많이 마셨기 때문에 병맥주 판매량이 많을 수도 있지 않겠는가.

[문제 3]에 대답은 그렇다이다. 남녀간의 사랑은 측정될 수 있다는 말이다. 실제로 연인이나 부부는 애인의 사랑, 배우자의 사랑을 측정하는 나름의 척도를 가지고 있다. 사랑한다는 말을 얼마나 자주 하는 지, 스킨쉽을 얼마나 자주 하는 지, 사랑스런 눈길을 얼마나 자주 보내는 지, 문자를 얼마나 자주 보내는 지, 문자 메시지에 얼마나 신속하게 답변 하는 지, 전화를 얼마나 자주 하는 지 등등 다양한 척도나 지표를 가지고 상대방의 사랑의 강도를 판단한다.

측정(measurement)이란 현상이나 대상의 변화에 수치를 부여하는 작업이다. 무게, 높이, 길이, 부피, 밀도 등 물리적 측정도 있고, 폭동, 혁명, 범죄, 불평등 같은 사회적 측정도 있으며, 분노, 사랑, 무관심, 자존감 같은 심리적 측정도 있지만, 측정은 공통적으로 현상을 수치화(quantify)한다.

계량적 사회연구가 가능하려면 연구자가 관심을 갖는 사회 혹은 사회심리 현상, 즉, 변수를 측정한 데이터가 있어야 한다. 사회통계학은, 연구자가 변수(들)을 측정한 데이터로부터 사회적(혹은 사회학적)으로 의미 있는 패턴을 찾거나 관계(그것을 사회적 규칙성, social regularities라고 부른다)를 발견하는 도구이다. (윤영민, 2017-08-15)

사회통계(4): 스마트폰으로 데이터분석을…

[문제] 통계학이나 데이터분석을 수행할 때 성능 좋은 컴퓨터가 필요할까? 

그렇기도 하고 그렇지 않기도 하다.

빅데이터를 가지고 데이터마이닝을 하거나 사례수가 많거나 복잡한 통계 도구를 사용하려면 성능 좋은 컴퓨터가 필요하다. 심지어 신경망(Artificial Neural Network)처럼 값비싼 GPU를 사용해야 하는 기계학습 모형도 있다.

그러나 그것은 반쯤만이 진실이다. 성능이 약한 노트북이나 태블릿 PC는 물론이고 탭이나 스마트폰을 가지고도 훌륭한 데이터 분석이 가능하다.

사실 요즘에는 누구나 손에 컴퓨터 한 대씩을 가지고 다닌다. 스마트폰 말이다. 컴퓨터로 치자면, 시중에서 유통되는 중저가 스마트폰도 2000년에 발표된 펜티엄 4 초기 버전 정도의 데이터 처리 능력을 지니고 있다.

스마트폰 앱이 많지 않기는 하지만 그래도 잘 찾아서 활용하면 통계 학습을 하거나 현업에서 통계를 사용하는데 있어 스마트폰만으로도 대부분의 분석이 가능하다. 위 사진은 내 스마트폰[Galaxy A5 (2016)]에 설치된 데이터분석용 앱들의 폴더이다.

이 중 가장 많이 사용하는 앱은 Excel이다. MS가 무료로 제공하는 이 앱은 PC버전에서 사용가능한 추가기능을 설치할 수 없는 한계가 있지만 함수만 잘 활용하면 기본적인 통계 분석은 물론이고 회귀분석같은 고급 기능까지 적용할 수 있다.

두 번째로 많이 사용하는 앱은 Probability Distributions이다. 다양한 확률분포를 가지고 특정 범위의 변수 값이 출현할 확률을 계산하거나 거꾸로 특정 확률에 해당되는 변수 값의 범위를 구할 수 있다. 아주 유용한 앱이다.

자료 처리나 통계 분석에서 내가 가장 많이 사용하는 소프트웨어는 엑셀과 구글 스프레드시트이다. 엑셀이 첫째지만 엑셀 데이터 파일이 생성되면 구글 스프레드시트로 데이터 탐색을 하곤 한다. (구글) 스마트폰 앱인 스프레드시트에는 분석 기능이 별로 없지만 이미 수행한 분석 결과를 가져올 수 있어 편리하다.

인문사회학도들은 거의 사용하지 않지만 공학계산기를 사용하면 편리한 때가 적지 않다. 스마트폰에 기본앱으로 제공되는 계산기도 간단한 수학계산에 사용할 수 있다.

계산기의 숫자 입력 칸 아래 있는 다음과 같은 아이콘을 클릭하면 계산기가 옆으로 누우면서 약간 복잡한 수학 계산이 가능해진다. 더욱 본격적인 공학용 계산기 사용하려면 에뮬레이터 앱을 설치한다. Wabbitemu는 스마트폰을 아래 그림처럼  TI 계산기로 바꿔주는 앱이다. 데이터를 입력하여 웬만한 통계분석을 수행할 수 있으며 매우 빠른 데이터 처리가 가능하다.

통계처리나 데이터분석을 하는데 도구를 탓하지 말자. 통계적 지식과 개념만 제대로 갖추고 있으면 스마트폰만으로도 멋진 통계분석, 데이터분석이 가능하다. (윤영민-08-15)

사회통계(3): 데이터의 유형

[문제] 다음 중 분산분석이나 회귀분석이 적용될 수 없는 변수는?

  1. 나이
  2. 종교
  3. 소득
  4. 교육수준

답은 2번 종교이다. 분산분석이나 회귀분석에는 의미있는 평균이 계산될 수 있어야 한다. 가장 기본적인 계산이 각 사례값과 평균의 차이인 편차를 구하는 것이기 때문이다.이 종교는 가톨릭, 개신교, 유교, 불교, 이슬람교, 유태교 등의 범주로 나누어지는 명목변수(nominal variable)이다. 설령 그 범주들을 숫자로 표현한다고 해도 평균값이 의미를 가질 수는 없다.

이 문제는 데이터의 유형에 관한 질문이다. 데이터 분석이나 활용에서 데이터의 유형은 대단히 중요하다. 데이터분석 모형이나 응용 프로그램은 특정한 유형의 데이터에만 타당하기 때문에 각 알고리즘이나 프로그램이 수용하는 데이터의 유형이나 수준을 정확히 인지해야 한다. 그렇지 않으면 알고리즘이나 프로그램이 아예 작동하지 않거나 작동하더라도 무의미한 결과를 준다.

통계학에서 데이터는 측정 수준(level of measurement)에 따라 자주 구분된다.  명목 데이터(nominal data), 순서 데이터(ordinal data), 구간 데이터(interval data), 그리고 비율 데이터(ratio data)가 그것이다. 명목 데이터는 성별, 혼인 상태, 종교와 같이 수치화할 수 없으며 범주(category)로 나누어 구분만 되는 데이터이다. 순서 데이터는, 성적(A, B, C, D, F)이나 리커트(Likert) 척도처럼 범주 사이에 서열이 존재하는 데이터이다. 명목 데이터와 순서 데이터를 합쳐서 질적(qualitiative 혹은 범주형, categorical) 데이터라고 불린다. 구간 데이터는 년도나 온도처럼 나누어질 수 없는 데이터이고, 비율 데이터는, 나이, 소득, 성적 평점처럼 절대 영점이 존재해서 나눗셈이 가능한 데이터이다. 구간 데이터와 비율 데이터를 합쳐서 양적(quantitative 혹은 수치형, numerical) 데이터라고 불리기도 한다. 각 데이터의 수준에 가능한 계산은 다음 표와 같다.


기계학습 분야에서는 데이터의 유형을 이산형(discrete) 속성과 연속형(continuous) 속성으로 분류하기도 한다. 그 두 속성의 예에 대해서는 아래 표를 참조하기 바란다.

참고로 연속형 데이터는 실수(real number) 값을 갖는데, 컴퓨터에서 실수는 부동(浮動) 소수점(floating point number)으로 표현된다. 이과 전공 학생들에게는 익숙한 표기법이지만 문과 전공 학생들에게 낯설 것이다. 아래 그림을 참고해서 익히기 바란다.

용어가 다소 혼란스럽기는 하지만 데이터분석은 여러 학문 분야가 관여되는 만큼 그러한 혼란은 피하기 어렵다. 그래도 여기서 소개한 정도만 기억하면 크게 도움이 될 것이다. (윤영민 2017-08-14).

 

사회통계입문(1): 데이터 대 정보

[문제 1] 다음 두 테이블(table, 표)의 특성은 어떻게 다를까? 앞의 것은 통계청이 운영하는 ‘국가통계포털’에서 다운로드받은 인구 자료이고, 뒤의 것은 성균관대학교가 운영하는 SRC에서 다운로드 받은 한국종합사회조사(KGSS) 자료이다.

%ec%97%b0%eb%a0%b9%ec%9d%b8%ea%b5%ac%ed%91%9c

kgss%eb%8d%b0%ec%9d%b4%ed%84%b0

[문제 2] 오늘날의 사회가 가진 특징을 가장 잘 보여주는 단어는?

[문제 1]의 답은, 두 테이블은 모두 엑셀 형식으로 되어 있지만, 앞 테이블은 가공된 데이터로서 정보(information)적 성격이 강하고, 뒤 테이블은 가공되지 않은 원시 데이터(raw data)이다. 앞 테이블은 가공/분석에 제약이 많은 반면, 뒤 테이블은 가공/분석이 자유롭다.

[문제 2]의 답은 데이터이다. 아마도 10년 전이라면 정보(information) 혹은 네트워크(network)가 가장 유력한 해답이었을 것이다. 그러나 지금은 데이터(Data)가 강력한 후보이다. 그것은 마치 원유나 옥수수처럼 온갖 목적에 맞게 가공될 수 있기 때문이다.

(“Settling the eternal semantic debate: what is knowledge, what is information…”에서 인용)

위의 DIKW 피라미드는 데이터, 정보, 지식, 지혜의 관계를 보여주는 모형으로 널리 사용된다. 그러나 이 모형은 현실을 크게 왜곡할 수 있다. 특히 데이터 관점에서 볼 때 그러하다.

이 모형은 데이터보다 정보가 유용하다는 인상을 줄 수 있다. 특정한 목적에 맞게 데이터가 가공되거나 선별된 것이 정보이다. 그렇게 해서 그림에서처럼 정보는 데이터에 가치가 추가되었다고 해석될 수 있다. 그러나 그것은 대단히 부분적으로만 진실이다. 데이터가 맥락화되면(contextualized), 특정한 목적을 위해서는 유용성을 얻겠지만 일반적 용도로 보면 오히려 가치를 잃는다.

활용가능성의 측면에서 데이터는 정보, 지식, 혹은 지혜보다 훨씬 커다란 잠재적 가치가 갖고 있다는 말이다. 그것은 마치 원유, 석탄, 옥수수, 쌀 같은 원자재가 높은 잠재적 가치를 지니는 것이나 마찬가지이다. 일단 특정한 목적을 위해 가공되면 다른 목적에는 사용할 수 없게 되곤 한다.

통계학이나 데이터과학에서 데이터는 흔히 테이블(table)로 저장된다. 그렇다고 데이터가 곧 테이블은 아니다. 테이블은 데이터일 수도 있고 정보일 수도 있다. 다시 말해 테이블은 가공되지 않은 원시 데이터(raw data)일 수도 있고, 데이터를 가공한 결과인 정보(information)일 수도 있다.

MS 엑셀은 이 점을 잘 느끼게 해준다.  아래 그림은 엑셀 스프레드 시트에 데이터를 입력한 모습이다(여러분도 엑셀을 열어 그대로 입력하고 따라해 보시오). 이 데이터를 테이블로 만들려면 엑셀 메뉴 중 ‘삽입’에서 ‘표’를 선택하면 된다. 그리고 그 데이터나 데이터-테이블을 특정한 용도에 맞는 테이블로 변환하려면 ‘삽입’에서 ‘피벗 테이블‘을 클릭하면, 데이터를 다양한 방식으로 정리해서 표로 만들 수 있다. 그렇게 해서 만든 표는 데이터가 아니라 정보이다. 데이터를 데이터-테이블이나 피벗 테이블로 변환하면 한편으로는 엑셀의 다양한 기능을 적용할 수 있지만, 다른 한편으로는 데이터는 자유를 잃는다. 다른 프로그램에서 사용될 때 불가능하거나 불편해진다는 말이다.

data

책, 연구보고서, 신문, 잡지 등에 제시되는 테이블은 거의 모두 정보이다. 그 정보를 좀 다른 용도로 재가공하거나 재분석하려면 그 정보가 생산된 데이터, 즉, 원시데이터를 구해야 한다. 연구자들은 raw data에 굶주려 있다. 그들은 정보가 아니라 데이터를 먹고 산다. 그들은 외친다.

Data를 달라! Raw data를 달라!

(윤영민, 2017-08-13)

사회통계(6): ANOVA(분산 분석)

[문제 1] 세 농장에서 옥수수를 생산하는데, 각각 살충제를 다른 방식으로 살포하였다. 재배를 마친 후 수확 상태를 조사해서 다음과 같은 결과를 얻었다. 이 데이터를 가지고 살충제의 살포 방법에 따라 옥수수의 수확량에 차이가 있다고 추정할 수 있을까?(김은정, 2017: 279 변형)

자연과학, 사회과학을 막론하고 경험 과학(empirical science)에서 지식을 얻는 방법은 실험과 관찰이다. 그런데 실험과 관찰을 찬찬히 뜯어보면 과학적 인식의 핵심은 비교(comparison)임을 알 수 있다.

실험에서는 처치 집단(treatment group)과 통제 집단(control group)을 비교하여 처치의 효과를 판단하고, 관찰에서도 어떤 기준값과 비교하거나 사례들을 비교하여 인과관계를 추론하거나, 차이(difference), 성과(outcome) 혹은 효과(effects)를 판단한다.

ANOVA(Analysis of Variance, 분산 분석)는, 집단들의 비교에 널리 사용되는 통계 도구이다. 기본적으로 ANOVA는 특정한 변수에 관해 집단들의 평균을 비교하며, 분산(variance)을 가지고 그 비교를 통계적으로 판단한다. 그래서 평균들을 비교함에도 불구하고 이름이 분산 분석이다.

[문제 1]을 보면, 세 곳의 농장에서 일종의 의사 실험(quasi-experiment)을 시행했다. 같은 살충제를 다른 방식으로 살포하고 어떤 방식이 더 좋은 지를 알아보는 조사이다. 그 방식이란 살충제 살포 시점이나 횟수에 관한 것이 아닐까 짐작된다. 살충제를 언제, 혹은 몇 번이나 살포하는가가 병충해 예방에 영향을 많이 미치기 때문이다.

농장 I, II, III은 각각 8군데의 밭이 있는데, 농장별로 살충제를 서로 다른 방식으로 살포하고 가을에 수확량을 조사했다. 세 농장의 수확량(100 평방미터당) 평균을 계산하면, 농장 I은 228.25 kg, 농장 II는 226.625 kg, 농장 III은 230.25 kg이다. 세 농장의 수확량 평균에 차이가 있음은 분명하다.

그러나 그 수치들만 봐서는 그 차이가, 살충제 살포방식이 달라서 나온 결과(차이)인지, 아니면 살충제 살포방식과는 상관없이 그냥 우연히 발생한 결과(차이)인지를 알 수가 없다. 그것을 통계적으로 판단할 수 있도록 도와주는 도구가 ANOVA이다.

ANOVA는 집단 간의 변이(between variability)집단 내의 변이(within variability)보다 충분히 크면, 집단들의 평균이 서로 다른 모집단에서 나온 것으로 추정하고, 조치(treatment, 독립변수: 이 사례에서는 살충제 살포방식)의 효과가 있다고 판단한다. 반대로 집단간의 변이가 집단 내의 변이보다 그다지 크지 않으면, 집단들의 평균이 하나의 공통 모집단으로부터 나온 것으로 추정하고, 조치의 효과가 없다고 판단한다.

집단 간의 변이와 집단 내의 변이의 비율은, 위 식에서처럼 집단 간 편차 제곱의 합(MSC, 처리 제곱의 평균이라고도 함)집단 내 편차 제곱의 합(MSE, 잔차 제곱의 평균이라고도 함)의 비율로 구한다.

MSC와 MSE는 다음과 같이 구할 수 있다.

그렇다면 문제는 SSC, SSE, , 를 구하는 것으로 압축된다. 그 값들은 아래 식들로 계산된다. SST는 총 제곱의 합, SSC는 처리 제곱의 합, SSE는 잔차 제곱의 합이다.

이 세 가지 제곱 합 사이에는 다음과 같은 관계가 성립한다. . 그래서 SST는 SSC와 SSE로 분해된다고 표현되기도 한다. SST는, 각 관측값에서 전체 평균을 뺀 편차를 제곱하여 더한 값이다.

(=j번째 집단의 i번째 관측값; =전체 평균; 은 집단 j의 관측값 수; k는 집단 수)

SSC는 각 집단의 평균에서 전체 평균을 뺀 편차에 각 집단의 관측수를 곱해서 모두 합한다.

(k=집단 수; j=j번째 집단; =j번째 집단의 관측값 수; =j번째 집단의 평균; =전체 평균)

SSE는 각 집단의 편차제곱의 합을 모두 더 한다.

(=j번째 집단의 분산) 혹은 공식을 가지고 구한다.

자유도는 아래 공식으로 구할 수 있다. 집단 간 제곱의 평균을 구하는 데 필요한 자유도는 집단의 수 빼기 1이며, 집단 내의 제곱의 평균을 구하는데는 총 관측 수에서 집단의 수를 빼면 된다.

, (k=집단 수; =전체 관측값 수)

이렇게 구한 F ratio, 즉, F 값은 F 분포를 이룬다. F 분포는 위의 두 가지 자유도(degree of freedom)에 의해 결정된다. 따라서 F 값, , 를 알면 p 값을 구할 수 있다. 아래 그림은 [문제 1]의 데이터를 가지고 세 가지의 편차를 구한 결과이다. (이 문제를 MS 엑셀을 사용해 풀어놓은 파일을 보려면 이 링크를 클릭하시오.) 여기서 전체 편차를 제곱하여 더하면 SST를 구할 수 있고, 그룹 간 편차를 제곱하여 더하면 SSC를, 그룹 내 편차를 제곱하여 더 하면 SSE를 구할 수 있다. MS 엑셀에서 함수 SUMSQ를 사용하면 쉽게 제곱 합을 구할 수 있다. 다음 그림에 보듯이 총 제곱합의 구하는 함수는 =SUMSQ(E2:G9)이다. 총 제곱합(SST)는 129.625, SSC(처리 제곱합)은 52.75, SSE(잔차 제곱합)은 76.875이다. 아래 그림에서 보듯이 이 편차제곱의 합들이 분산분석표의 두 번째 열을 구성한다. 이 그림은 엑셀이 제공하는 추가기능인 ‘데이터 분석’을 수행한 결과이다. 제곱합의 수치들이 정확히 일치함을 볼 수 있다. 처리제곱 평균(MSC)은 처리 제곱합을 그것의 자유도로 나누어 준 26.3757이고, 잔차제곱 평균(MSE)은 그것의 자유도 21로 나누어 준 3.660714이다(네 번째 열 참조). F 비(ratio)는 26.3757/3.660714 = 7.204878이다. 그것의 확률인 p-값은 함수 FDIST를 사용하면 구할 수 있다. p-값은 0.004145로 0.05보다 훨씬 작다. 이 결과를 가지고 우리는, 살충제의 살포방식이 옥수수 생산에 상당히 의미 있는 영향을 미친다고 결론을 내릴 수 있을 것이다. 즉, 농장 III에 적용한 방식이 가장 효과적이고, 농장 II에 적용한 방식이 가장 비효과적으로 판단한다. 실제 분산분석을 수행할 때 직접 평균, 편차, 제곱합 등을 구하는 경우는 없을 것이다. 통계 소프트웨어를 사용하면 순식간에 필요한 값들을 모두 얻을 수 있기 때문이다.

엑셀의 자체 추가기능인 데이터 분석에서도 일원 배치법 분산 분석을 적용하면 한꺼번에 모든 값을 얻을 수 있다. 다만 엑셀에서는 데이터 분석 기능을 모바일 버전에서는 사용할 수 없다는 함정이 있다. 때문에 자주 사용하는 함수들은 사용법을 익혀두면 편리할 것이다.

어떤 통계 도구도 그러하듯이 ANOVA도 적용하는데 갖춰야할 조건이 있다. ANOVA는 꼭 실험이라 아니라도 독립변수가 범주형이고, 종속변수(혹은 반응 변수)가 수치형이면 사용할 수 있다. 그리고 종속변수의 모집단이 정규분포를 따라야 한다. 다만 표본의 크기가 모두 같다면, 이 가정은 크게 중요하지 않다.

다음 두 문제를 직접 풀어보기 바란다.

[문제 2] 어떤 대학에서 학생들을 상대로 대학생들의 학습 능력을 연구한다고 하자. 연구자들은 그 대학에서 오래 공부할수록 학습 능력이 향상되는 지 알고 싶다. 그러기 위해 1학년, 2학년, 3학년에서 각각 8명씩 무작위 표본을 추출하여, 100점 만점의 학습 능력 테스트를 시행하였다. 다음 표는 그 결과이다. 이 데이터를 가지고 대학에서의 공부가 학생들의 학습 능력을 향상시킨다고 주장할 수 있을까?
 [문제 3] Consumer Report는 미국 South Carolina 주 소재 풀 서비스 식당들의 식사 가격을 조사하였다. 세 가지 유형의 식당을 각 8곳씩 조사한 결과는 다음과 같다. 이 데이터를 가지고 세 가지 유형의 식당에서의 한 끼 식사 평균 가격이 다르다고 추정할 수 있을까?(Anderson, 2016: 542)

<참고 문헌> Anderson, David R, et.. (류귀열/김창규/최승은/김민중/이성철 역). 2016. <앤더슨의 통계학(Essentials of Modern Business Statistics)>. 한올. 김은정. 2017. <사회조사분석사>. 학진북스.

사회통계입문(2): 데이터(data)란?

[문제] 아래 세 사진의 공통점은?

위 세 사진의 공통점은 모두 데이터(data)라는 사실이다.  첫 번째 사진은 영화 ‘스타트랙’의 배역 중 1인인 ‘데이터’라는 이름의 A.I.이고, 두 번째 사진은 네플릭스가 투자하여 제작하고, 개봉하자마자 스마트폰에서 스트리밍 서비스를 시작한 영화 ‘옥자’의 포스터이다. 영화 ‘옥자’는 그 자체가 데이터이기 때문에 가능한 일이었다. 세 번째 사진은 스마트폰 속의 은행인 카카오뱅크이다. 카뱅은 오프라인 지점이 없는 은행이다. 카뱅은 그 자체가 데이터이다.

오랫동안 데이터란 어떤 조사 대상–존재, 심리상태, 사건, 현상 등–의 흔적, 편린, 혹은 특성을 가르키는 용어였다. 즉, 데이터는 “~~에 대한 것”이었다. 그러나 데이터 기반 사회에서 테이터는 더 이상 “~~에 대한 것”에 그치지 않는다. 스타트랙의 배역이나 카카오뱅크처럼 데이터는 어떤 존재 자체일 수도 있고, 사이버 성희롱처럼 사건 자체일 수도 있으며, 뇌파로 기록된 심리 자체일 수도 있고, 인터넷 거래, SNS의 댓글이나 ‘좋아요’ 같은 현상 자체일 수도 있다. 데이터 분석이나 활용에 앞서 데이터에 대한 인식의 전환이 요구된다.