본문 바로가기
분석가의 책장/독서기록

[데이터] 신선한 재료는 맛있는 요리의 핵심 - 새빨간 거짓말, 통계 ①

by 니나노래방 2024. 4. 4.

 

글 정보

- 이 글의 개요소개 : 이 글은 <새빨간 거짓말, 통계>의 PART1-3 에 대한 리뷰 글입니다. 
- 예상 독자 : 데이터를 분석하고 싶은데, 숫자를 어떻게 봐야하는지 어려워하시는 분들에게 적합해요.
- 글의 목표 : 책의 내용을 소개하고, 실제 일에는 어떻게 적용하려고 하는지 알려드리고자 합니다.
- 알면 좋은 개념 : 평균이나 대표값 등 기본적인 통계 용어를 아신다면 글을 읽기 수월해요.

 

들어가며

데이터는 숫자놀음이라는 말이 있습니다. 숫자를 어떻게 뽑아내고 해석하느냐에 따라 그 결과가 천차만별이기 때문이에요. 데이터를 쓸 때 또는 해석할 때 ‘마구니가 쓰이지 않으려면’ 숫자를 어떻게 요리(주작)할 수 있는 지 알아야 합니다. 마치 화이트 해킹처럼 말이죠!

누구인가? 누가 숫자 마구니가 씌였어?

 

<새빨간 거짓말, 통계>는 숫자가 어떻게 왜곡될 수 있는지, 어떻게 이 트릭을 피할 수 있는지를 쉽게 알려주는 책입니다. 데이터리안 ‘데이터 넥스트 레벨’ 3기 도서로 선정되었는데요. 3주 동안 책을 리뷰해보고, 책에서 얻은 인사이트를 나누고자 합니다.

 

책의 목차

책은 크게 10개의 파트로 구성되어 있고, 각 파트 별로 여러 스토리가 재밌게 펼쳐집니다. 

-- 1주차 -- 
PART 1. 언제나 의심스러운 여론조사 (표본 추출과 데이터 오류)

PART 2. 평균은 하나가 아니다 (대표값)
PART 3. 작은 숫자를 생략하여 사기 치는 법 (표본의 크기)
-- 2주차 -- 

PART 4. 쓸데없는 숫자로 벌어지는 헛소동 (표본오차)
PART 5 . 사람 눈을 속이는 그래프 (시각화)
PART 6. 백문이 불여일견이라고? 천만에 (시각화)
PART 7. 아전인수를 위한 마구잡이 통계 (지표)
PART 8 . 통계도 논리다 (인과관계 - 상관관계)
-- 3주차 --
PART 9. 통계를 조작하는 법 (상대값)
PART 10. 통계의 속임수를 피하는 다섯 가지 열쇠 (숫자 제대로 읽기)

* (괄호)는 파트 별 관련 개념을 넣어둔 것입니다.

 

PART1 - PART3 요약 : 재료가 신선해야 요리도 맛있다

데이터 분석 과정은 요리 과정과 비슷합니다. 음식을 만들 때 어떤 요리를 만들지 생각하고 재료를 준비합니다. 다음으로는 재료를 가다듬거나 가공해서 음식을 만들지요. 마지막으로는 예쁜 접시에 담아 대접합니다.

 

여기서 ‘재료’는 얼마나 중요할까요? 아무리 멋드러진 화력쇼를 펼쳐도 재료가 신선하지 않거나 필요한 재료가 빠진다면 맛있는 음식이 나올 수 없습니다. 분석도 마찬가지인데요. 원천 데이터가 왜곡되어 있거나 결과를 내기에 양이 충분하지 않거나, 혹은 필요한 정보가 빠져있다면 좋은 분석이 나올 수 없습니다. PART 1 - 3은 이러한 ‘재료’에 대한 이야기를 담고 있습니다.


  • 데이터는 정확한가? : 수집한 데이터 자체에 오류가 있을 수 있습니다. 특히 주관이 담긴 데이터라면 제공자의 의도에 따라 숫자가 축소, 과장되기도 합니다.
  • 표본이 전체 집단을 대표할까? : 전체 데이터를 볼 수 없을 때는 일부 데이터를 가지고 전체 집단의 모습을 추론합니다. 추론이 설득력 있으려면 샘플로 뽑은 데이터가 전체 집단을 대표하는지가 중요한데요(표본의 대표성). 그런데 누가, 어떤 방식으로, 어떻게 샘플을 뽑았는 지에 따라 원래 모습과는 완전 다른 그림이 그려질 수 있습니다.
  • 숫자 하나로 모든 걸 설명할 수 있을까? : 대표값이란 한 집단의 성질을 대표하는 값입니다. 나쁘게 말하면 이 집단을 나타내는 다른 수많은 정보들은 ‘대표값’으로 퉁쳐집니다. 가공하는 사람의 목적에 따라 의도적으로 뭉갤 수도 있습니다.
  • 적은 수로도 설명이 될까? : 표본의 크기가 작으면 여기에서 나온 결과(통계량)가 전체 집단을 대표하기 어려울 수 있습니다. 극단적으로 1명만 뽑아서 인플루언서 선호도를 조사한다고 해보겠습니다. 이 사람이 육은영 선생님의 팬이라면 요즘 아이들이 육은영 선생님을 좋아한다고 말할 수 있을까요? 한 명만 침착맨을 좋아한다고 해도 위의 결과가 흔들리게 됩니다.
  • 사소한 조작은 사소하게 끝날까? : 사소한 숫자, 용어를 본인에게 유리하게 숨기거나 드러내면 어떨까요? 이 작은 변화가 나비효과를 일으킬 수 있습니다. 예를 들어 고객 수와 주문 고객수는 ‘주문’ 이라는 단어 하나 차이지만, 수식으로는 완전히 다른 결과를 가져옵니다. 마찬가지로 반올림이나 내림 등 사소한 데이터의 처리가 반복될 경우 실제 데이터와의 오차도 커질 것입니다.

적용해볼 점

책을 읽으며 업무를 하거나 생활에서 염두해야 할 점을 정리했습니다.

1. 누가 어떤 질문을 하는가도 ‘표본’일 수 있다.

데이터가 질문하는 사람과 질문 자체의 영향을 받는다는 점이 인상 깊었습니다. 이전에 <컨버티드>에서는 질문자의 의도에 따라 다른 질문을 구성한다는 내용이 있었는데요. 제품에 대한 개선 의견을 듣고 싶다면 중립 또는 부정적인 질문을, 제품을 추천하고 싶다면 긍정적인 질문을 한다는 것입니다.

 

질문자의 인구통계학적 특성(나이, 성별, 인종)이나 특정 상황에 따라서도 데이터가 다르게 쌓일 수 있다는 점도 흥미로웠습니다. 데이터 분석을 하면서 사용자를 인터뷰하는 일은 거의 없었는데요. 이런 주관적인 데이터를 얻고자 할 때는 잘 정제된 질문을 하고, 되도록 중립적인 상황에서 답변을 받도록 유도해야겠습니다.

 

2. 객관적 데이터를 함께 확인한다.

데이터가 오염되는 이유 중 하나는 ‘주관성’ 때문입니다. 책에서의 사례처럼 소득을 조작하는 경우도 있지만, 잘못 기억하는 경우도 있습니다. 또는 선호도나 추천지수(NPS), 만족도와 같은 데이터에 개인의 성향이 반영되기도 합니다. 예를 들어 A와 B가 동일한 수준으로 만족해도 A는 10점 만점에 7점을, B는 8점을 표기할 수 있습니다. 따라서 주관적인 데이터를 얻을 때는 근거를 뒷받침할 ‘객관적인 데이터’도 함께 확인해야겠다고 생각했습니다.

 

주관적인 데이터와 연관되는 객관적 지표 확인하기

  • 근로 소득은 ‘건강보험료’로 대체해보기
  • 사용자 만족도는 방문 빈도나 재방문율, 체류 시간을 확인해보기

질문을 다르게 해보기

  • ‘평소 일주일에 몇 번 운동하세요?’ >> ‘지난 주에 몇 번 운동하셨어요?’ (더 구체적이고, 정확한 데이터를 도출할 수 있습니다)
  • ‘당신의 최애는 누구인가요?’ >> ‘앨범이나 굿즈를 지불해본 경험이 있는 아티스트는 누구인가요?’

 

3. 충분히 큰 숫자인지 생각한다. 

숫자가 결론을 내기에 ‘충분히 큰가(sufficiently large)?’ 에 대해서도 고민해야 합니다. 적은 수를 해석할 때는 결과의 설명력이 떨어질 수 있음을 염두해야겠습니다. 또한 표본을 선택할 수 있을 때에는 충분히 큰 숫자를 선택해야 합니다. 표본 크기가 클 수록 모집단에 가까운 분포를 보이지만, 표본 크기가 너무 크면 운영상 비효율적이기 때문입니다. A/B 테스트의 경우 검정력 분석 등의 방법을 통해 필요한 최소 표본 수를 산출합니다.

검정에 필요한 값들을 입력하면 자동으로 최소 표본 수를 산출해 줍니다 (출처 : abtestguide.com)

 

4. 숫자를 제시할 때는 메타 데이터와 함께.

사진을 보면 사진에 대한 ‘메타 데이터’가 있습니다. 언제, 어떤 카메라로, 어떤 조리개값으로 찍었는지 등에 대해 알려줍니다. 책을 보면서 숫자를 제시할 때도 숫자에 대한 메타 데이터를 정확히 표기해야한다는 점을 배웠습니다.

  • 용어(지표)의 정의
  • 지표의 기준, 계산식
  • 지표 단위
  • 결과값(통계량)에 대한 데이터
    • 통계량 종류(산술평균, 기하평균, 중앙값, 최빈값 등)
    • 표본 크기
    • 표준오차
    • 신뢰도
  • 함께 고려할 지표값

 

5. ‘점’ 에만 의존하지 않는다.

이전에 데이터리안 선미님이 ‘분포를 꼭 확인하라’는 조언을 해주셨는데요. 점은 겉으론 명확해 보이지만 오차가 발생할 위험이 높고, 전체 데이터를 설명하기에 불완전하기 때문입니다. 따라서 하나의 대표값에 의존하지 않고 보완할 수 있는 데이터를 함께 보려고 합니다. 범위, 분포, 필요한 경우 전체 데이터를 확인하는 과정도 필요합니다.

  • 보고 싶은 지표 : 산술 평균
  • 함께 확인할 값들 : Min-Max(최소 최대 범위), IQR(3분위수, 1분위수 차이), 파레토 지표(20%:80%) 표준편차(데이터가 퍼진 정도), 기타 대표값(중앙값, 최빈값)

 

생각해보기  :  어떤 질문을 해볼 수 있을까?

 

주장 : 양파는 혈관 건강에 좋다

 

근거1. 퀘르세틴이 혈관 벽의 손상을 막아줌 

근거2.나쁜콜레스테롤(LDL)의 혈중 농도를 낮춰줌 

 > 데이터 : 미국 A&M대 연구 결과 매일 양파 반쪽 이상을 섭취한 사람의 고밀도콜레스테롤(HDL)이 30% 증가

근거3. 유화아릴이 혈관 확장에 도움을 준다. 

근거4. 알리신이 유해균 증식을 억제시킴

근거5. 알리신이 혈소판 엉김을 방지하고 혈관 내 섬유소 용해 작용을 도움

 

근거2는 그나마 입증 데이터가 있어 보이지만, 근거2를 뒷받침하기에는 불충분해 보입니다. 어떤 질문을 하며 데이터의 마구니(?)를 발견할 수 있을까요? 저의 생각은 아래에 넣어두었습니다. 

더보기

지표

Q. 근거 지표가 무엇일까? : 혈중 LDL 농도가 근거 지표일까, 혈중 HDL 농도일까? HDL이 근거 지표라면, 나쁜 콜레스테롤 (LDL)과 고밀도콜레스테롤(HDL)의 관계가 있을까?

근거2는 나쁜 콜레스테롤(LDL)의 혈중 농도를 얘기하고 있는데, 자료는 HDL 농도를 이야기하고 있습니다. 여기에서 보완을 하려면 실험 결과인 LDL 농도가 이 과연 근거로서 적합한 지표인지 확인해야 합니다. 만약 LDL을 그대로 사용하려고 한다면, LDL과 HDL의 관계를 표현해줘야 합니다.

 

Q. 혈중 LDL, HDL 농도를 어떻게 정의하고 있는가?

근거 지표에 대한 설명이 부족합니다. 혈중 LDL, HDL이 어떻게 정의되어 있는지, 해당 지표가 높을 수록 좋은지 낮을 수록 좋은지도 알려줘야하겠습니다. 

 

실험 조건

Q. 실험에 참가한 사람의 수는 얼마일까?

참가자 수, 그룹 별 참가자 수에 따라 실험 결과의 신뢰도가 달라질 수 있습니다. 

 

Q. 참가자는 어떤 기준으로 뽑은걸까?

참가자를 특정 집단에서만 뽑았다면 표본 추출에서 오염이 발생한 것입니다. 연령대 별로 무작위 추출을 한 것인지, 비만 등 특정 조건을 가지고 참가자를 뽑았는지, 양파를 원래 섭취하지 않았던 그룹만 대상으로 한 것인지 등등 참가자의 조건이 궁금하네요.

 

Q. 참가자를 양파 반쪽 이상을 섭취한 그룹(실험집단)과 아닌 그룹(통제집단)으로 나눴을 것 같다. ‘양파 반쪽 섭취(Treatment)' 이외의 면에서는 동질적인 집단으로 볼 수 있을까?

실험의 핵심은 실험 집단과 통제 집단이 처치 조건 외에 다른 조건에서는 동질적이어야 한다는 것입니다. 통제 조건을 잘 설정해줬다면 실험의 결과는 훨씬 설득력 있을 것입니다. 

 

Q. ‘양파 섭취' 외의 모든 실험 조건은 통제되었을까?

실험 기간에도 처치 외의 다른 변수가 개입되어서는 안 됩니다. 따라서 실험 이전과 실험 이후 음식 섭취량, 신체 활동, 음식 종류의 조건은 동일한지, 두 집단 모두 실험 이전에 양파 섭취가 없었는지 확인해볼 것 같아요. 

 

Q. 실험 기간은 얼마나 진행된 걸까? 

충분한 기간 동안 실험이 진행되었는지 확인해볼 것 같습니다. 1회만 양파를 섭취한 후 LDL, HDL 농도를 비교한다면 결과에 노이즈가 있을 수 있다고 생각했습니다. 

 

실험 결과 / 해석 

Q. 실험 집단의 HDL 30% 증가는 무엇을 의미하는 걸까? 

'HDL 30% 증가'라는 표현이 굉장히 모호합니다.. 결과 지표에 대한 정확한 정의가 없기 때문인데요. 참가자 별로 HDL 농도의 증가율을 계산해서 산술 평균을 낸 것일 수도 있고, 실험집단의 실험 전 HDL 농도의 산술 평균과 실험 후 HDL 농도의 산술 평균을 측정해 증가율을 계산한 것일 수도 있습니다. 또 이 값이 평균이 아닌 다른 대표값을 사용했을 가능성도 있고요. 오해의 소지가 있기 때문에 결과 지표를 어떻게 계산했는지 정리하면 좋겠습니다. 

 

Q. 실험 집단의 실험 전 HDL의 수치는 어땠던 것일까? 

작은 수는 비율의 함정에 빠지기 쉽습니다. 애초에 HDL 농도가 낮았다면 농도 증가율은 뻥튀기가 가능합니다. 따라서 기준이 되는 실험 전 HDL 농도 수치도 함께 표기하면 더 정확한 판단이 가능할 것입니다. 

 

Q. LDL 농도 어떻게 변화하였을까?

주요 지표가 LDL 농도라면 실험 전, 후 LDL 농도를 파악하는 것이 좋겠습니다. 

 

Q. 통제집단의 LDL, HDL 농도에는 어떤 변화가 있었을까?

이 기사의 문제 중 하나는 '30% 증가' 가 어느 정도로 의미 있는지 밝혀내지 못한다는 점입니다. 예를 들어 위의 근거2가 참이려면, 오직 양파를 섭취했을 때만 LDL, HDL의 농도 변화가 있어야 합니다. 그런데 양파를 섭취하지 않고도 농도 변화가 감지되었다면 어떨까요? 근거2의 반례가 나온 셈이므로, 근거2의 주장은 약해집니다. 

 

Q. HDL 농도 30% 증가가 실험 집단 내 참가자들에게도 적용될 수 있을까?

'30% 증가'가 실험 집단을 설명할 수 있을까요? 평균의 함정은 아닐까요? 범위(IQR, Min-Max)나 기타 대표값(최빈구간, 중앙), 분포(분산, 표준편차) 등을 보조적으로 확인하고, 설정한 신뢰수준에 따라 오차범위를 산출해볼 수 있겠습니다. 

 

Q. 실험집단과 통제집단의 HDL 농도 증가율 차이는 통계적으로 유의미할까?

일단 결과 지표를 HDL 농도 증가율의 평균으로 가정해 보겠습니다. 참가자 별로 HDL 농도 증가율을 구한 후 실험 집단, 통제 집단의 평균 농도 증가율을 계산하여 비교합니다. 

 

HDL 농도 증가율 = (실험 후 HDL 농도 - 실험 전 HDL 농도) / 실험 전 HDL 농도 X 100%

 

통제 집단의 평균 농도는 그대로 유지된 반면 실험집단의 HDL 농도 증가율은 30%였다고 가정합니다. 그렇다면 이 둘의 차이가 통계적으로 유의미한 것일까요? 설정한 유의 수준을 가지고 두 집단의 평균 HDL 농도 증가율을 검정해볼 수 있습니다. 

 

마치며

책의 장수는 가볍지만 마냥 쉽게 읽히지 않았던 1-3장이었습니다. 숫자가 나오면 이상하게 설득력이 있다고 생각하는데요. 데이터로 근거를 입증하기 위해서는 정확한 데이터, 올바른 방식으로 뽑힌 데이터가 필요하다는 것을 배울 수 있었습니다. 한편으로는 데이터를 제공하는 사람으로써 사용자에게 올바른 정보를 어떻게 제공해야할까 고민할 수 있는 시간이었습니다. 다음주에도 싱글벙글 데이터 거짓말과 함께 돌아오겠습니다. 

 

감사합니다. 

댓글