상세 컨텐츠

본문 제목

우리 동네 인구 구조 시각화 하기

데이터분석/실습

by 2^7 2022. 4. 26. 10:03

본문

행정안전부(www.mois.go.kr)에서 정책자료->통계->주민등록 인구통계->연령별 인구현황에서 전국의 읍면동, 연령별 인구수 데이터(csv파일)를 다운받아 활용

1. 동네 인구 구조 시각화 하기

  • 인구 데이터 파일을 읽어오기
  • 전체 데이터를 한 줄씩 반복해서 읽기
  • 확인하고자 하는 데이터가 맞는지 확인
  • 확인하고자 하는 데이터가 맞으면 연령별로 순서대로 저장
  • 저장된 데이터를 시각화 하기

의 순서대로 시각화 작업을 진행한다.

 

 1-1 인구 데이터 파일 읽어 출력하기

import csv

f = open('age.csv')
data = csv.reader(f)
 
for row in data :
    print(row)

 

 1-2 우리 동네 데이터만 읽어오기

import csv
f = open('age.csv')
data = csv.reader(f)

for row in data :
    if '신도림' in row[0] :    #확인하고자 하는 동네 이름을 작성
        print(row)

 1-3 우리 동네 연령별 인구수 데이터 읽어오기

  데이터를 확인하면 첫번째 열([0])은 지역명, 두번째([1]), 세번째([2]) 열은 해당 지역의 총 인구수 그 뒤로 0~100세 이상의 인구수가 순서대로 저장되어 있다. 따라서 리스트의 3번 인덱스부터 끝까지 데이터를 읽어오면 된다.

import csv
f = open('age.csv')
data = csv.reader(f)

for row in data :
    if '신도림' in row[0] :
        for i in row[3:] :
            print(i)

0세 부터 100세까지 순서대로 데이터를 나열(일부 생략)

 

 1-4. 읽어온 데이터를 순서대로 저장

import csv
f = open('age.csv')
data = csv.reader(f)
result = []                     #빈 리스트를 만들어 저장
for row in data :               
    if '신도림' in row[0] :     #찾고자 하는 행정구역이 포함된 데이터만 찾기
        for i in row[3:] :      #0세부터 모든 연령데이터에 대해 반복
            result.append(int(i))  #인구수를 리스트에 순서대로 저장(저장 시 문자열을 정수로 변환하여 저장)
print(result)

  1-5 데이터 시각화 하기

import csv
f = open('age.csv')
data = csv.reader(f)
result = []
name = input('인구 구조가 알고 싶은 지역의 이름(읍면동 단위)을 입력해주세요 : ')
for row in data :
    if name in row[0] :
        for i in row[3:] :
            result.append(int(i))
            
import matplotlib.pyplot as plt
plt.style.use('ggplot')
plt.rc('font', family = 'Malgun Gothic')
plt.title(name +' 지역의 인구 구조')
plt.plot(result)
plt.show()

 

 

참고 서적 : 모두의 데이터분석 with파이썬
728x90

관련글 더보기