■ 4~5 | 궁금한 지역의 인구 구조와 가장 비슷한 인구 구조를 가진 지역 시각화하기
이제 데이터를 처리하는 가장 중요한 부분입니다. 여기에서는 각 알고리즘 코드를 개별로 살펴본 후, 마지막에 전체 코드를 실행하여 결과를 확인하겠습니다.
먼저 궁금한 지역의 연령별 비율과 다른 지역의 연령별 비율의 차이를 계산합니다. 그리고 궁금한 지역의 연령별 비율과 다른 지역의 연령별 비율의 차이를 계산합니다.
import numpy as np # 4 │ ➊ 궁금한 지역 A의 인구 비율에서 B의 인구 비율을 뺀다. x = df.sub(df2.iloc[0], axis=1) # 4 │ ➋ A의 인구 비율에서 B의 인구 비율을 뺀 값의 제곱 값을 모두 더한다. y = np.power(x, 2) z = y.sum(axis=1)
Unit 14에서는 궁금한 지역의 연령별 비율과 다른 지역의 연령별 비율의 차이를 계산하여 가장 차이가 작은 지역 한 곳을 찾았습니다. 예를 들어, ‘신도림동’을 입력하면 ‘서울특별시 구로구 구로제1동’ 한 곳의 결과만 볼 수 있었습니다. 하지만 pandas의 sort_values() 정렬 함수와 슬라이싱을 이용하면 상위 몇 개 지역까지 쉽게 찾을 수 있습니다.
i = z.sort_values().index[:5] # 4 │ ➌ 그 차이가 가장 작은 지역 5곳을 찾는다.