일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |
- data-analysis
- DataAnalyst
- data
- PyGWalker
- productanalysis
- DataAnalysis
- gapminder
- 벅슨의역설
- 데이터분석가
- 신기효과
- 데이터디스커버리플랫폼
- 시각화
- EDA
- 글또
- 데이터분석
- 데이터
- 인과추론
- 프롬프트엔지니어링
- 아하모먼트
- 트위먼의법칙
- pandasai
- n8n
- 야구
- 주가데이터
- 전환분석
- retentioneering
- 분석한스푼
- 성장
- aha-moment
- 프롬프트
데이터 생존 로그
01. 세상은 개발도상국과 선진국으로 나뉠까? 본문
이전글: 2023.02.21 - [📊 분석 한 스푼 🥄] - 00. 분석으로 진수성찬을 만들어보자🍚🍖
00. 분석으로 진수성찬을 만들어보자🍚🍖
배경 데이터 분석가로써 벌써 반 년을 일했다. 분석 취준 시절과 얼마 안되는 분석가로써의 업무를 경험하면서 내 성장은 항상 하드스킬에만 초점이 맞춰져있었다. 이제 조금씩 분석 업무도 진
analyst-ggom-chi-kim.tistory.com
세상은 개발도상국과 선진국으로 나뉠까?
책 [팩트풀니스]를 읽었다.
첫 챕터의 내용은 대충 이랬다.
다수의 사람들은 세상이 선진국과 개발도상국으로 나뉜다고 생각한다.
하지만 그건 오래 전의 일이고, 현재는 4단계로 나눌 수 있다.
위 내용을 읽으면서 다양하고 복잡한 호기심과 의심점이 생겼지만
크게 두 가지로 정리해보면 다음과 같다.
- 저자가 제시한 지표 외에 다른 지표를 뜯어봐도 똑같은 결과가 나올까?
- 실제 나라별 지표들을 거리 기반으로 군집화 해도 결과는 동일할까?
위 두 가지 궁금증을 해소하기 위해
분석의 주제를 조금 더 구체화해서 정리해보았다.
국민들의 삶의 수준을 나타낼 수 있는 지표를 활용하여
거리 기반으로 군집화하면 몇 개의 그룹으로 나눌 수 있을까?
📃데이터셋 구성
데이터셋은 갭마인더(바로가기)에서 가져왔다.
국민들의 삶의 수준을 나타낼 수 있는 feature로는 아래의 네 가지를 선정했다.
- 1000명당 0~5세 영유아 사망율
- 여성 1명당 아이 출생 수
- 1인당 소득
- 기대 수명
또한 과거와 현재는 1965년과 2020년으로 선정했다.
그래서 최종적으로 분석에 활용한 스키마는 다음과 같다.
컬럼명 | 설명 | 데이터 타입 |
country | 국가명 | string |
1965_mort | 1000명당 0~5세 영유아 사망율(1965년) | float |
1965_chil | 여성 1명당 아이 출생 수(1965년) | float |
1965_income | 1인당 소득(1965년) | float |
1965_life | 기대 수명(1965년) | float |
2020_mort | 1000명당 0~5세 영유아 사망율(2020년) | float |
2020_chil | 여성 1명당 아이 출생 수(2020년) | float |
2020_income | 1인당 소득(2020년) | float |
2020_life | 기대 수명(2020년) | float |
1965년과 2020년 모두 4가지 feature를 가지고 있는 국가는 총 186개의 국가였고,
186개의 국가를 대상으로 분석을 진행했다.
📊EDA ①
총 4개의 feature 중 두 개를 뽑아서 plot을 찍어보았을 때,
국가 간의 군집 형성이 관찰되는지 확인해보았다.
4개의 feature 중 2개를 뽑는 경우의 수는 4C2, 즉 연도별로 6가지 경우의 수가 나온다.
실제로 찍어보니 1965년의 경우,
첫 번째 plot(책에서 활용한 두 가지 지표이다)와 세 번째 plot은 두 가지 군집이 형성되는게 관찰되긴 한다.
반면 2020년은 어떠한 plot에서도 군집이 형성되어 보이진 않는다.
📊EDA ②
이번엔 네 가지 피처를 한 번에 보고 싶었다.
그래서 차원축소 방법을 활용했는데,
시각화에서 자주 활용하는 t-SNE와 PCA를 활용했다.
(그 전에 StandardScaling을 수행했다!)
먼저 t-SNE 결과다.
1965년이 2020년 보다는 조금 더 특정 부분에 몰리는게 보이긴 한다.
다음은 PCA인데,
t-SNE보다 이상치로 조금씩 튀는 녀석들이 보이는게 특징이다.
여기까지 EDA였고 일단 내 첫 번째 궁금증은 해결되었다.
다른 지표들도 같이 보니, 책에서 제시하는 기준(과거에는 두 가지 그룹, 현재에는 네 가지 그룹 형성)과는
조금 다른 결과가 조금씩 보이는 것 같다!
설레는 마음으로 군집화하러 가보자
🗺️군집화
군집화에 앞서, 군집을 형성하는 기준은 군집 내 거리 제곱합을 활용했다.
즉, 각 국가 그룹의 간의 지표 차이가 적당히 줄어든 최적의 군집을 찾고자 했다.
위 그림을 참고해보니 최적의 군집은 1965년과 2020년 모두 4 근처에서 형성되는 것처럼 보였다.
그래서 k = 4로 k-means 군집화를 수행하였고,
그 결과를 t-SNE와 PCA를 통해 찍어보았다.
먼저 1965년이다.
막상 찍어보니, 남색으로 군집화된 4개의 나라가 눈에 띄었다.
군집의 개수를 줄여서(k = 3) 저 나라들을 다른 군집에 포함시켜보자
훨씬 군집화가 잘 된 것으로 보인다!
즉, 과거(1965년)에는 국민들의 삶의 수준에 따라 세 그룹의 국가군으로 군집화하여 볼 수 있다.
깔끔하다.
2020년은 4개의 국가군이 형성되는 것으로 보인다.
💡결과 정리
글의 첫 부분에 제시했던 내 궁금증(분석의 주제)로 돌아가보자
국민들의 삶의 수준을 나타낼 수 있는 지표를 활용하여
거리 기반으로 군집화하면 몇 개의 그룹으로 나눌 수 있을까?
결과는 생각보다 간단했다!
과거는 세 개의 군집,
현재는 네 개의 군집으로 나눌 수 있다.
저자가 제시한 기준(영유아 사망율과 여성당 아이 수를 시각화하여 판단)과는 아예 동일하진 않지만,
어느정도 일치는 했다.
마지막으로, 군집별 국가랑 지표들을 뒤져보고 이쁘게 지도에 표현도 해보고 싶은데,,
간단한 분석으로 마무리되지 않을 것 같아서 패스!
'📊 분석 한 스푼 🥄' 카테고리의 다른 글
3000번 버스, 탈 수 있을까? - 데이터 기반으로 퇴근시간 정하기 (0) | 2025.03.01 |
---|---|
[야구] 타율이 높으면 득점을 잘한다? (with. 상관관계 분석) (0) | 2023.06.18 |
00. 분석으로 진수성찬을 만들어보자🍚🍖 (0) | 2023.02.21 |