3  보도를 위한 데이터과학 기초

3.1 데이터를 어떻게 측정할 것인가?

데이터저널리즘을 본격적으로 설명하고 실습을 진행하기 앞서 데이터과학의 기본적인 사항을 알아둘 필요가 있습니다. 이는 주장의 근거를 수치로 제시하는 과학적 사고방식에서 필수적입니다. 자연과학 뿐만 아니라 사회과학의 여러 분야에서는 데이터를 이용하여 주장을 펼치는 양적 방법론의 사고방식이 오래 전부터 사용되었습니다. 양적 방법론은 결국 데이터를 이용하여 개념을 측정하고 측정된 변수들의 관계를 분석하는 과정을 통해 주장을 전개하게 됩니다.

이처럼 데이터저널리즘은 기사에 활용될 개념을 명확히 하고 변수(variable)로서 해당 개념을 측정하는 것에서 시작합니다. 개념의 특성에 따라 측정 변수의 성격도 달라지는데, 특히 어느 정도 수치적 특성을 띠고 있는지에 따라 측정의 척도를 구분할 수 있습니다. 명목척도는 수치적 성격이 가장 적은 척도로, 측정하고자 하는 개념을 구분하기만 하여 변수에 기록합니다. 이 수업을 듣는 수강생들을 남자와 여자로 구분하여 성별이라는 변수에 기록하거나, 전공이라는 변수에 학생들의 소속학과를 기록한 것이 명목척도의 예가 될 수 있습니다. 서열척도는 측정된 개념에 크고 작음이 있어 그 순서를 정할 수 있습니다. 수업을 듣고 난 학생들의 성취도를 높음과 중간, 낮음으로 나누어 A, B, C로 측정한다면 성취도라는 개념을 서열척도로 측정한 것입니다. 서열척도로 측정된 성취도는 측정값 사이에 순서를 정할 수 있지만, 각 측정값 사이의 간격이 얼마나 다른지 알기 어렵다는 한계가 있습니다.

이에 비해 등간척도는 각 측정값의 간격이 일정하다는 특징을 갖습니다. 설문에서 많이 보이는 리커트 형식의 문항에 응답할 때 우리는 ’전혀 아니다’와 ’매우 그렇다’에 1과 7을 각각 부여하고 그 사이에 나머지 숫자가 매겨진 척도에서 한 값을 선택 하는데, 이것이 등간척도입니다. 각 숫자 사이의 크기가 1로서 동일하다는 가정 하에 응답하는 것이지요. 한편 비율척도는 측정간격이 동일하다는 점에서 등간척도와 같지만, 측정치에 절대적인 0이 존재하다는 점에서 보다 정밀한 측정치입니다. 해당 값이 0인 경우 측정하고자 하는 개념이 대상으로부터 없다는 의미입니다. 예를들어 사물의 길이가 0이라고 한다면, 그 사물에는 측정하고자 하는 길이의 개념이 존재하지 않는 것을 뜻합니다. 이런 의미에서 길이는 비율척도입니다. 온도의 경우 섭씨나 화씨 모두 0도가 존재하지만, 이 값은 온도가 존재하지 않기 때문에 0이 아니라 편의에 따라 임의로 정한 기준점입니다. 섭씨의 경우 물이 얼기 시작한 온도를 0도, 물이 끓기 시작한 온도를 100도로 정하였지요. 이에, 섭씨, 화씨로 측정된 온도의 경우 등간척도입니다. 물리학에서 사용하는 절대온도의 경우, 측정하려는 개념인 온도가 존재하지 않는 절대적인 기준으로서 0도를 정하였고, 이는 비율척도가 됩니다.

척도의 종류를 이해하는 것이 중요한 이유는, 척도의 수준에 따라 변수에 적용할 수 있는 연산이 달라지기 때문입니다. 명목척도나 서열척도로 측정된 변수의 경우 사칙연산이 불가능 합니다. 여자와 남자로 구분한 수강생들의 성별이나 A, B, C로 측정된 성취도의 경우 값을 더하거나 빼는 것이 불가능합니다. 여자는 1, 남자는 0이나, A는 1, B는 2, C는 3처럼 숫자로 기록했다고 하더라도, 각 측정 값의 차이가 동일하지 않다면 덧셈이나 뺄셈의 결과는 의미없는 숫자일 뿐입니다. 이런 이유로 명목척도나 서열척도의 경우 각 범주에 몇명이 있는지 빈도를 세는 것 만이 가능합니다. 이에 비해 등간척도나 비율척도의 경우 덧셈과 뺄셈이 모두 의미 있어 평균 값을 계산할 수도 있습니다. 섭씨의 온도는 등간척도로 이를 매 시간 측정하여 모두 더한 후 24로 나누어 하루동안의 평균 기온을 계산한다면 이는 의미있는 정보로 활용될 수 있을 것입니다. 한편 비율척도로 측정한 경우 평균 계산 뿐만 아니라, 비율 계산도 가능합니다. 키가 160cm의 엄마는 80cm 아이의 두배 입니다.

변수는 특정 개념을 측정하여 사용하기도 하지만, 기존의 변수를 이용하여 지표나 지수 등의 새로운 변수를 만들어 사용하기도 합니다. 경제 기사에 많이 등장하는 1인당 GDP처럼 국내총생산을 인구수로 나누어 특정 단위 당 얼마나 되는지 지표로 나타내기도 하고 가격변화율 처럼 아파트 가격의 변화를 기존 아파트 가격으로 나누어 변수의 변화율을 계산하기도 합니다. 이들 변수의 경우 0이 의미있는 수치이고, 수치의 간격들이 동일하니 비율척도로서 평균의 계산이 가능합니다. 그러나 전달하고자 하는 의미와는 다른 뜻을 갖게 됩니다. 예를들어 서울시 아파트 가격 변화율을 고려할 때는 개별 아파트 들의 세대수가 다름을 고려하여 가중평균을 계산해야 할 것입니다. 구간 별로 측정한 속도의 전체적인 수준을 가늠하기 위해 평균을 계산할 때도 주의해야 할 것입니다. 즉 단순히 속도의 평균값을 계산할 것이 아니라 구간 마다 이동한 전체 거리를 합산하고 이를 전체 소요된 시간으로 나눠야 할 것입니다.

3.2 측정된 데이터로 대상 파악하기

위에서 언급된 것처럼 평균을 계산하는 이유는 측정 대상의 집단적 특성을 파악하기 위해서 입니다. 교수자로서 개별 학생들의 성취도에 관심이 있어 개개인의 학생들의 점수를 살펴볼 수 있겠지만, 전체적인 상황을 파악하기 위해서는 데이터를 종합적으로 이해하고 판단해야 할 것입니다. 데이터과학에서는 데이터 특징을 종합적으로 파악하기위한 다양한 방법들을 고민해 왔습니다. 그중에서도 크게 데이터의 중심을 보는 중심경향성과 퍼짐정도를 나타내는 산포도를 보곤 합니다.

데이터의 중심성을 데이터의 중심이 어디에 있는지를 확인하는 것입니다. 일반적으로 많이 사용하는 평균이 대표적입니다. 신문기사에서 많이 등장하는 평균소득, 평균인금, 평균연령 등이 그 개념으로 관심있는 대상의 측정치들을 모두 더하고 그 수로 나눈 것이 평균입니다. 위에서 설명햇듯이 평균은 등간척도나 비율척도로 측정된 변수에 대해 계산할 수 있고, 그 데이터의 중심이 어디있는지를 일컷습니다. 일반적으로 평균값이 그 집단을 대표한다고 생각하지만 이러한 판단은 종종 오해를 불러일으킵니다. 한 기업의 월급이 천만원이라면 우리는 이 기업의 근무조건이 매우 좋다고 생각할 수 있을 것입니다. 그러나, 기업 내 한두명이 극단적으로 높은 월급을 받아 평균이 높은 것이고 실제로 대다수의 직원들은 매우 낮은 임금을 받고 있을 수 있습니다. 극단적인 값이 많을수록, 극단적인 값이 크기가 클 수록 이러한 왜곡은 심해집니다.

극단치의 영향력을 줄이기 위해 중심경향성을 측정하는 대안적인 지표들을 생각해 볼 수도 있겠습니다. 중앙값(median)은 측정치들을 크기대로 나열하고 중간이 얼마가 되는지 나타내는 값입니다. 위의 예에서 평균 월급이 천만원인 이유가 수억원의 월급을 받는 일부 임원들 때문이라면 임금 수준이 상위 (혹은 하위) 50%의 월급을 계산했을 때는 천만원보다 훨씬 낮을 수 있습니다. 즉 중앙값은 극단치의 영향력에서 비교적 자유롭습니다. 또는 수집된 데이터 중 가장 높은 값과 가장 낮은 값을 갖는 관측치를 제외하고 평균을 계산한 절단평균을 사용할 수 있습니다. 올림픽과 같은 국제경기에서 순위를 정할 때 심사위원 평가의 평균을 구할 때 종종 활용합니다.

중심경향성과 더불어 집단의 특징을 나타내는 또 다른 정보는 산포도입니다. 산포도를 통해 집단 내 대부분의 관측치가 비슷한 지, 아니면 서로 많이 다른 지를 알 수 있습니다. 산포도는 분산(variance)이나 표준편차(standard deviation), 범위(range)와 같은 값으로 측정됩니다. 분산은 개별관측치들이 평균으로부터 얼마나 떨어져 있는지 편차를 계산하여 제곱하고 이 제곱값들의 평균으로 계산됩니다. 분산이 편차를 제곱한 값들의 평균으로 계 계산되어 측정단위가 달라지므로, 이를 통일하기 위해 분산의 제곱근을 씌운 값인 표준편차도 많이 사용합니다. 범위는 최대값에서 최소값을 뺀 값입니다. 분산이나 표준편차, 범위 모두 데이터의 퍼짐정도를 나타내는 값으로 이들 값이 큰 경우 존재하는 데이터의 분포도가 큰 것으로 이해할 수 잇습니다.

위에서 설명된 개념들이 개별 변수의 특성을 알기 위한 것이라면, 공분산과 상관계수는 두 개의 변수의 관계를 알아보기 위해 확인하는 것입니다. 우리는 데이터과학을 수강한 학생들의 성취도와 취업 후 받게 된 소득과의 관계에 관심 갖을 수 있습니다. 수업에서 열심히 공부한 학생들이 높은 소득을 얻게 되었는지 궁금한 것이지요. 이를 알아보기 위해 두 변수가 같이 변하는지, 공분산을 계산할 수 있습니다. 공분산은 개별 학생의 성취도가 평균과 얼마나 떨어져 있는지를 나타내는 편차와 임금 평균을에서 얼마나 떨어져 있는지를 나태내는 편차를 곱한 값들의 평균으로 계산합니다. 성취도가 평균보다 높은 사람이 임금도 평균보다 높고, 성취도가 평균보다 낮은 사람이 임금도 평균보다 낮으면 공분산은 양의 값을 갖게 되고 이는 두 변수가 양의 관계에 있다고 판단할 수 있습니다. 반대로 공분산이 음의 값을 갖는다면 한 변수가 평균보다 클 때 다른 변수는 평균보다 작다는 의미로, 두 변수가 음의 값을 갖는 다는 것을 알 수 있습니다. 공분산이 측정 단위에 따라 달라진다는 점을 고려하여, 해당 값을 각 변수의 표준 편차로 나눈 상관계수도 변수와의 관계를 확인하기 위해 많이 활용합니다. 상관계수는 1에서 -1 사이의 값을 갖고, 1에 가까우면 양의 상관관계, -1은 음의 상관관계, 0일 경우 선형의 관계가 없음을 의미합니다.

평균을 통해 중심경향성을, 분산과 상관계수를 통해 산포도를, 공분산과 상관계수를 통해 변수의 관계를 명료하게 알 수 있었지만, 이들로서는 변수가 가지고 있는 정성적 특성을 알기 어렵습니다. 데이터의 특성을 파악하기 위해 시각화 한 정보를 활용하기도 합니다. 특히 등간척도나 비율척도로 측정된 변수의 경우 히스토그램을 활용하여 그 분포를 확인합니다. 히스토그램을 그리기 위해서는 측정된 값들을 담을 수 있는 구간을 설정하고 (0점 초과부터 10점 미만, 10점 초과부터 20점 이하까지, …, 90점 초과-100점 이하까지), 각 구간에 해당하는 관측치들의 빈도를 측정한 빈도표를 만듭니다. 이를 막대그래프 형태로 표현하면 히스토그램이 됩니다. 그 외에도 상자그림(box plot)은 분위수 정보를 이용하여 데이터의 분포를 가늠할 수 있도록 해 줍니다. 이런 시각적 표현은 요약된 정보에 비해 자세한 정보를 순식간에 파악할 수 있게 하여 유용한 도구입니다. 두 개의 변수가 어떻게 연관되어 있는지 확인하기 위해 산점도(scatter plot)를 그릴 수 있습니다. 두 변수들이 등간척도나 비율척도로 측정된 경우, 각 값들을 (x, y)의 좌표에 표현하면 산점도가 됩니다.

변수에 명목척도나 서열척도로 측정된 변수가 포함된 경우 데이터를 요약하여 교차표(cross table)를 만들고, 이를 토대로 변수와의 관계를 볼 수도 있습니다. 즉 성별과 직업의 두 변수가 있을 때 여성에서의 직업 분포를 파악하고, 남성에게서의 직업 분포를 비교하여 성별에 따른 직업 비중이 어떻게 다른지 확인할 수 있습니다. 반대로, 학생 직업에서 남자-여자의 비율, 직장인 에서의 남자-여자 비율 등을 비교할 수도 있을 것입니다. 또한 두 변수 중 한 변수는 명목척도이고 다른 변수는 등간척도나 비율척도일 경우, 명목척도로 측정된 변수의 값에 따라 다른 변수의 평균을 측정하여 정보를 요약하고 이를 막대 그래프 등으로 비교하여 평균의 차이를 시각화 할 수도 있을 것입니다. 이러한 시각화 모두 데이터의 특성을 한눈에 파악하는데 도움이 됩니다.

시각화를 통해 데이터를 손쉽게 파악할 수 있음을 보인 예로, Anscombe의 데이터가 있습니다. 아래 4개의 데이터 셋은 평균이나 표준편차, 공분산, 상관계수, 여기서 설명하지 않았지만, 회귀계수까지 모두 같습니다. 즉 요약된 지표로만 보자면 네 데이터 셋이 모두 같은 특성을 보입니다. 이해의 편의를 위해 4개의 학급을 가르치는 선생님이 중간고사와 기말고사로 네 집단을 이해하고자 한다고 합시다. 그러나 이를 시각화 해 보면 모든 집단이 다른 특성을 보인다는 것을 알 수 있습니다. https://en.wikipedia.org/wiki/Anscombe%27s_quartet 이 처럼 데이터의 특성을 정확히 파악하기 위해서 우리는 종종 시각화의 도움을 받을 필요가 있습니다.

3.3 일부로 전체를 파악하기

측정된 대상의 특성을 종합적으로 파악하기 위해 평균과 분산 등의 대표값으로 중심경향성과 산포도 등을 알아보았습니다. 그러나 우리가 대상을 측정하는 이유는 그 데이터의 특성 보다는 그 대상이 포함된 전체를 보기 위함입니다. 이를 우리는 모집단과 표본의 개념으로 설명합니다. 모집단은 관심의 대상이 되는 전체 집단입니다. 일반적으로 우리는 전체를 알고 싶지만, 현실적인 문제로 일부를 가지고 전체를 추론합니다. 대통령의 지지율을 알고 싶은 정당관계자는 설문조사를 의뢰하여 일부의 사람들로 지지율을 조사하고, 이를 전체 국민의 지지율을 조사합니다. 일부를 가지고 전체를 추론하는 것을 우리는 추론통계라고 합니다.

추론통계에서는 모집단의 평균과 분산과 같이 모집단 특성을 추론하기 위해 표본의 특성을 이용합니다. 모평균의 경우 같은 계산공식을 사용한 표본평균으로 추정합니다. 표본평균은 (특히 모집단이 정규분포라는 특정한 분포를 따를 때) 최소분산불편추정량(Uniformly Minimum Variance Unbiased Estimator ; UMVUE)이라는 특징을 갖습니다. 최소분산불편추청량은 몇가지 개념이 혼합된 것으로 하나하나 따져 볼 필요가 있습니다. 여기서 추정량은 표본의 평균으로 모집단의 평균, 모평균을 추정한다는 의미입니다. 표본평균은 모평균 그 자체의 값은 아닙니다. 표본을 수집할 때마다 그 표본에 포함되는 값들은 달라지게 되고 그로 인해 표본평균의 값이 달라집니다. 우리는 단지 관측된 그 값을 통해 미지의 모평균 값을 추정할 따름입니다. 모평균을 추정할 때 우리는 추청치가 편향되지 않기를 바랍니다. 편향되지 않는다 함은 모평균을 반복적으로 추정했을 때 전반적으로 적거나(과소추정) 크게(과대추정) 추정하지 않고 평균적으로 참값인 모평균을 추정하게 되는 것을 뜻합니다. 최소분산이라 함은 반복적으로 추정하는 경우 그 변동성이 적음을 뜻합니다. 즉 다른 추정치보다 추정에서의 변동이 최소인 경우를 뜻합니다. 극단적으로 추정치의 분산이 0이라 함은, 추정치가 변하지 않고 틀리던 맞던 하나의 값을 내놓는 경우입니다.

모집단의 분산을 추정하는 경우, 우리는 표본에 같은 공식을 사용하여 분산을 계산할 수 있습니다. 그러나 표본으로 분산을 계산하여 모분산을 추정하는 경우 모분산을 과소추정하는 경향이 있습니다. 이에 표본의 갯수인 n으로 나누지 않고, n-1로 나누는 것으로 표본분산의 계산공식을 삼습니다. 이 표본분산이 모분산의 불편추정량이 됩니다. 표본분산 공식을 n-1로 나눈 이유를 개념적으로 살펴보면 다음과 같습니다. 우리가 하는 일은 표본을 이용하여 모집단의 값들이 평균에서 얼마나 퍼져 있는지를 나타내는 모분산을 추정하는 것입니다. 원래는 표본으로 관측된 값들이 모평균에서 얼마나 떨어져 있는지를 계산해야 하는데, 모평균의 값을 알 수 없으니 표본의 평균을 이용하여 관측된 값들의 편차를 계산합니다. 여기서 문제가 발생합니다. 표본으로 관측된 값들이 표본평균으로부터 얼마나 떨어져 있는지 측정한 이 편차는, 미지의 모평균으로부터의 계산한 편차보다 작을수 밖에 없습니다. 이는 표본평균이 표본 값들로부터 계산된 것이기 때문입니다. 표본평균이 우연히 모평균의 값과 같을 때를 제외하고는 모평균의 관측치와의 편차는 표본평균의 관측치와의 평균보다 언제나 큽니다. 이에 표본평균을 이용하여 분산을 계산할 때는 좀 더 작은 값으로 나눠주어 큰 값으로 계산된 편차의 제곱합을 보정해 주어야 합니다.