남자 데이터 정의
import pandas as pd
file_name = '202108_202108_연령별인구현황_월간.xlsx'
df_m = pd.read_excel(file_name, skiprows=3, index_col='행정기관', usecols='B, E:Y')
df_m.head(3)
df_m.iloc[0].str.replace(',','').astype(int) #1,195,951 -> 119595 (정수형으로 바꿔줌)
df_m.iloc[0]=df_m.iloc[0].str.replace(',','').astype(int)
#바꾼거를 0번째 인덱스에 집어넣음
df_m.iloc[0]
df_m
여자 데이터 정의
df_w = pd.read_excel(file_name, skiprows=3, index_col='행정기관', usecols='B, AB:AV')
df_w.head(3)
df_w.columns = df_m.columns #컬럼명 통일
df_w.columns
Index(['0~4세', '5~9세', '10~14세', '15~19세', '20~24세', '25~29세', '30~34세',
'35~39세', '40~44세', '45~49세', '50~54세', '55~59세', '60~64세', '65~69세',
'70~74세', '75~79세', '80~84세', '85~89세', '90~94세', '95~99세', '100세 이상'],
dtype='object')
df_w.iloc[0]=df_w.iloc[0].str.replace(',','').astype(int)
df_w
데이터 시각화
import matplotlib.pyplot as plt
import matplotlib
matplotlib.rcParams['font.family'] = 'Malgun Gothic'
matplotlib.rcParams['font.size'] = 15
matplotlib.rcParams['axes.unicode_minus'] = False
plt.barh(df_m.columns, -df_m.iloc[0] // 1000)
plt.barh(df_w.columns, df_w.iloc[0] // 1000)
plt.title('2021 대한민국 인구 피라미드')
plt.savefig('2021_인구피라미드.png', dpi = 100)
plt.show()