DS 스터디노트 - EDA 인구분석

Syl·2024년 4월 21일

DS Journey

목록 보기
29/38

7주차
Sun. 21. April

수강한 분량: EDA 인구분석

학습한 핵심 내용:

-인구 분석

-fillna

-NAN으로 채우기

-NAN 채우기

-컬럼명 변경

-소계 제거

-loc[], 행이름 변경

-컬럼 추가

-pivot table

-소멸위기지역 컬럼 생성

-시도

-ID: pop["ID"] = si_name

-구 목록(wikipedia)

-지역 이름 정리
-행정구

ㄴ시도 컬럼에 value가 있다면(행정구를 가진 시의 구 이름이라면) 이렇게 한다. 이때 마산합포구, 마산회원구는 [2:-1] 합포, 회원만 뗀다.

ㄴ ID로서 구분되어야 함.

-그 외

ㄴ광역시도 컬럼에 있는 마지막 세 글자가 광역시, 특별시, 자치시가 아니라면 일반 시도의 시 or 군이다.
ㄴ특별자치시 따로
ㄴ세 글자가 광역시, 특별시, 자치시라면 앞 글자 두 개만 따고 뒤 '시도' 글자 수가 2개면 그대로 붙이고 세 글자라면 마지막 글자 떼기. 즉, 중구 = 중구, 강남구 = 강남

ㄴ시 이름 빈 리스트에 넣기

-코드 작성에 대한 고민

-엑셀 지도 읽기

ㄴ데이터 없는 칸은 NaN이 들어감

-stack(): pivot table의 반대.

ㄴ카르토그램으로 만들 각 지역의 이름과 좌표가 필요하다.

ㄴy좌표, x좌표

ㄴ 변수명 바꿈 draw_korea = draw_korea_raw_stacked

-border lines

-시도 이름 표현 함수: plot_text_simple()

ㄴ광역시면 줄바꿈해라(00 00으로 표기되므로)
ㄴ고성이면 그냥 고성으로만 표시해라(어차피 지도에 위치 표기)
ㄴ글자수 3자리 이상이면 폰트 크기 줄여라
ㄴmatplotlib으로 그릴 때 경계선에 글자 위치하지 않게 0.5만큼 축에서 띄어 써라

-simpleDraw()

ㄴinvert_yxis(): 엑셀은 위에서 아래로 증가, matplotlib은 아래서 위로 증가하므로.

-set(): 집합으로 만드는 명령. 정렬. 데이터 검증.

ㄴ둘 빼면 공집합. draw_korea에 해당하는 ID는 pop에 모두 있음.

ㄴ 광역시가 아닌데 행정구를 가지고 있던 도시들이 pop["ID"]에 남아있었음.
ㄴ어차피 행정구별로 인구 현황을 잡아 놨기 때문에 전체 시의 테이터는 필요 없음.

-인구 현황 데이터 합치기

ㄴID를 기준으로 pop(인구 현황 데이터)과 draw data(지도 그리기 위한 데이터) 합치기

-그림을 그리기 위한 데이터 계산 함수

ㄴsimple로 표현했을 떄 지역 이름이 들어갔던 자리에 타켓 데이터로 지정된 컬럼의 숫자가 들어간다.
ㄴwhitelabelmin: 배경색과 글씨색의 경계 지정

-plottext

ㄴFalse면 값의 범위가 양수만 존재, 하얀색~지정색까지
ㄴTrue면 0이 센터에 위치하고 음수~양수의 값을 가짐
ㄴget_data_info는 인덱스를 y좌표, 컬럼을 x좌표로 pivot_table된 결과가 masked_mapdata라는 변수에 저장되어 있고 plt.pcolor로 컬러 채움.

-draw korea()로 인구 현황 카르토그램

-소멸 위기 지역 카르토그램

-남녀 비율 카르토그램

-2040 남녀 비율

-Folium

ㄴ인덱스를 ID로 잡고, json 파일도 일치시키기

-안구수합계 컬럼을 그리기

-소멸위기지역 컬럼 그리기

-실습

-지도 시각화를 위한 ID 만들기

-코드는 사람마다 달라질 수 있다.

  1. 지도 그리기(카르토그램)

-경계선 지정하기

-카르토그램/지도 시각화할 데이터 프레임 완성

0개의 댓글