15기 데이터 취업 스쿨 / 33일차 스터디노트 / 인구분석

구명모·2023년 6월 8일

EDA

목록 보기
13/15
post-thumbnail

♟️목표

  • 인구 소멸 위기 지역 파악
  • 인구 소멸 위기 지역의 지도 표현
  • 지도 표현에 대한 카르토그램 표현

♟️데이터 읽고 인구 소멸 지역 계산하기

초기 세팅
엑셀을 불러오는데 빈칸도 많고 NaN값도 많아서 header = 1로 해주고 fillna(method="pad")로 데이터를 정리했다.

컬럼 이름이 너무 길어서 각각 광역시도 와 시도 로 변경하고 계를 인구수로 바꾸었다.

소계라는 부분은 필요가 없기 때문에 "시도"에서 소계가 없는 부분을 다시 population에 재할당 해준다. 항목을 구분으로 바꾸고 총인구수, 남자인구수, 여자인구수를 합계, 남자, 여자로 바꾸어주었다.

소멸지역을 조사하기 위한 데이터

나이별로 묶어서 새로운 컬럼을 만들어주었다.

pivot_table

pivot_table을 이용해서 원하는 데이터들로 dataframe을 만들어준다. 지역별 남자, 여자 수를 나타냈다.

소멸비율, 소멸위기지역 컬럼 생성

소멸위기지역 조회

reset_index를 통해 광역시도 부분도 columns로 빼주고 멀티 columns를 다 더해줄 것이다.

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

unique()로 확인한 각 아이디들을 합쳐줄것이다. 예를 들면 서울 중구, 서울 서초, 포항 북구, 안산 단원 등 이런식으로 만들것이다.

일반 시 이름과 세종시, 광역시도, 일반 구 정리

행정구

고성군

고성군 같은 경우는 강원도에 하나, 경남에 하나가 있어서 따로 분리를 해주었다

다 채워준 si_name을 pop 컬럼에 넣고 필요없는 부분은 지워준다.

♟️지도 그리기(카르토그램)



draw_korea_raw를 나타낸 모습이다.


reset_index와 rename(columns)로 수정을 한 모습이다.
그리고 경계선을 다 찍어줬다. ㅠ ㅅ ㅠ

이름을 split()으로 분리했을때 예를 들어서 고양 일산동구 처럼 고양, 일산동구 같이 2개가 나온다면 고양 \n 한 다음 일산동구 처럼 나오게 한다.

이제 그려준 BORDER_LINE을 시각화해준다.
그리고 폰트 사이즈와 폰트 정렬, 뒤집기, 타이트한거 풀어주기 등을 같이 설정해주면

이런 깔끔한 데이터가 나온다.

두 데이터 프레임을 merge로 합쳐준다.

♟️지도에서 시각화


참고할 데이터에 따라 다르게 나타낼수도 있다.

profile
데린이

0개의 댓글