데이터라면 어떤 것이든 모두 시각화로 만들 수 있을까요? 답은 아쉽게도 ‘그렇지 않다’ 입니다. 데이터의 형태에 따라 시각화 차트를 만들 수도 있고, 그렇지 않을 수도 있습니다. 또 어떤 데이터는 시각화 차트로 바로 만들 수 있지만 그렇지 않은 경우도 있습니다. 그렇다면 어떻게 해야 할까요? 간단히 데이터의 형태를 바꿔 주면 됩니다. 그러면 데이터 시각화에 적합한 데이터는 무엇인지 알아봅시다.
통계표와 로우 데이터의 차이 이해하기
우리에게는 흔히 왼쪽과 같은 통계표가 익숙합니다. 다수의 보고서, 발표 자료에서 본 ‘데이터’는 로우 데이터가 아닌 통계표인 경우가 많습니다. 그러나 데이터 시각화를 위해 필요한 데이터는 오른쪽의 원자료, 즉 로우 데이터(Raw data)입니다. 차이가 한눈에 보이시나요? 먼저 통계표를 살펴보겠습니다. 아래 그림의 왼쪽 표는 통계청의 ‘성/연령별 취업자’ 통계입니다.
빨간색으로 강조된 셀 값을 보겠습니다. 위 그림에 표시된 빨간색 셀 값 3,683명은 ‘시점(2018년 11월)’, ‘성별(남자)’, ‘연령(50–59세)’인 3가지 정보를 포함합니다. 이렇듯 통계표에서 수치를 나타내는 하나의 셀(cell)은 여러 개의 변수 정보를 포함합니다. 바로 오른쪽 표를 보겠습니다. 이 표가 바로 로우 데이터입니다. 하나의 셀 값이 하나의 정보만을 담습니다.
왼쪽의 통계표는 이러한 로우 데이터에서 특정한 기준(시점, 성별, 연령)에 따라 데이터를 조합하고 계산한 결과에 따라 만들어진 결과물입니다. 이렇게 로우 데이터를 통계표로 만드는 과정은 시각화 차트를 만드는 과정과 동일하기도 합니다. 따라서 통계표 역시 시각화 차트 유형 중 하나로 보는 것이 일반적입니다.
즉 데이터 시각화 차트는 로우 데이터의 변수를 특정한 기준으로 데이터를 조합하고 계산한 결과(통계)를 시각화 요소로 활용해 표현한 것입니다. 여기서 ‘특정한 기준’은 로우 데이터의 수많은 변수 중 시각화 차트를 만드는 데 이용할 몇 개의 변수를 선택하는 것을 의미합니다. 시각화 차트에 표현된 시각화 요소의 시각적 패턴은 어떤 변수를 어떤 조합으로 선택하느냐에 따라 달라집니다. 이해를 더하기 위해 데이터 변수에 대해 자세히 알아보겠습니다.
로우 데이터의 두 가지 변수: 수치형, 범주형
로우 데이터의 변수는 셀에 표현된 값의 형태에 따라 수치형 변수(measure, value)와 범주형 변수(dimension) 2가지로 나뉩니다. 수치형 변수는 계산이 가능한 숫자 형태의 값을 가진 변수를 의미합니다. 반면 범주형 변수는 데이터값이 개별 항목(category)으로 구분되는 값을 갖습니다. 크게 텍스트, 지역, 날짜, 숫자 4가지 유형으로 구분합니다. 데이터를 여러 항목으로 나누어 볼 수 있는 기준이 되기에 데이터 분석 시 비교 집단을 만드는 기준이 됩니다.
범주형 변수의 세부 유형 중 ‘숫자’가 있으니, ‘숫자 형태의 값이라면 수치형 변수가 아닐까?’ 하는 궁금증이 들 수 있습니다. 숫자 형태의 값을 갖는 변수라고 할지라도 데이터의 의미상 수학적 계산이 무의미한 경우 해당 변수를 범주형 변수로 활용합니다. 예로 나이(age)는 숫자를 데이터값으로 갖지만, 나이를 더하거나 빼는 등의 수학적 계산이 사실상 무의미하므로 범주형 변수로 활용하는 것이 일반적입니다.
한편, 시각화에 필요한 데이터 형태는 로우 데이터지만 통계청을 비롯한 다수의 기관에서는 로우 데이터가 아닌 통계 데이터를 제공하는 경우가 많습니다. 최근에는 로우 데이터를 개방해서 데이터 활용도를 높이기 위한 움직임이 나타나지만 여전히 그렇지 않은 경우가 많기에 통계표 형태의 데이터로 시각화 차트를 만들고자 할 때는 데이터를 정제해야 합니다.
통계표를 로우 데이터로 정제하기
그렇다면 로우 데이터가 아닌 데이터로 시각화 차트를 만들려면 어떻게 해야 할까요? 데이터를 직접 정제해야 합니다. 데이터의 형태와 상황에 따라 데이터를 정제하는 방법은 다양합니다. 여기서는 통계청에서 통계 데이터를 로우 데이터로 쉽게 정제할 방법을 알아보겠습니다. 이 내용을 통해 앞서 이야기했던 통계 데이터와 로우 데이터의 차이를 경험적으로 이해할 수 있으며, 실제 자신이 가진 개별 데이터를 어떤 형태로 정제해야 하는지도 이해할 수 있습니다.
통계청 국가통계포털에서 특정 통계 지표에 대한 데이터를 조회하면 데이터를 확인할 수 있는 화면에서 피벗 옵션 기능을 이용할 수 있습니다. 이를 이용하면 비교적 쉽게 시각화를 위한 데이터로 정제 가능합니다.
아래 그림의 위쪽은 통계청 국가통계포털에서 특정한 통계 데이터를 선택하면 볼 수 있는 기본 통계표 화면입니다. 이 화면의 우측 상단 아이콘 중 화살표 모양을 클릭하면 피벗 옵션이 팝업창으로 나타납니다. 팝업창에서 현재 통계표의 행·열 피벗 조건을 확인할 수 있습니다. 로우 데이터로 정제하기 위해서 는 우측 영역에 있는 변수를 좌측 영역으로 드래그 앤드 드롭해 이동시켜야 합니다.
좌측 영역으로 이동시킨 변수의 순서를 조정해 로우 데이터에 표현될 변수의 순서를 조정할 수도 있습니다. 이 과정은 피벗된 통계표를 다시 해체한다는 의미에서 언피벗(Un-pivot)이라고 합니다. 피벗 옵션을 수정한 뒤 [확인] 버튼을 클릭하면 그림 아래쪽과 같이 통계표가 로우 데이터 형태로 바뀐 것을 확인할 수 있습니다.
그럼 이제 로우 데이터를 다운로드해보겠습니다. 피벗 옵션을 수정한 화면에서 [확인] 버튼을 클릭하면 그림 5의 아래쪽과 같이 통계표가 로우 데이터 형태로 바뀌는 것을 확인하셨습니다. 여기서 다운로드 버튼을 클릭하면 그림 7과 같은 팝업창이 뜹니다. 이때 주의해야 할 점은 셀 병합을 하지 않은 형태로 파일을 다운로드해야 한다는 점입니다. 정제된 데이터를 다운로드하면 시각화에 바로 활용할 수 있는데, 그렇지 않은 경우 엑셀에서 일일이 셀 병합을 해제하고 빈 셀의 값을 채우는 번거로운 과정을 따로 해야 하기 때문입니다.
통계청의 피벗 옵션 기능을 이용하면 쉽게 데이터를 정제할 수 있지만 우리가 데이터를 얻을 수 있는 다수의 사이트에서는 데이터 정제를 위한 옵션 기능을 제공하지 않는 경우가 많습니다. 이 경우 엑셀, 오픈 리파인, KOSIS(통계청, 인구 총조사, 연령 및 성별 인구)등 정제를 위한 별도의 소프트웨어를 활용하는 방식으로 데이터를 정제해야 합니다. 이 방법은 『데이터가 한눈에 보이는 시각화』 도서에 수록되어 있으니, 이번 주말에 오프라인 서점에 가서 한 번 확인해 보시는 건 어떠신지요? 지금까지 뉴스젤리였습니다.
원문: 뉴스젤리