320x100
320x100
다루는 내용
- 공공데이터를 활용해 전혀 다른 두 개의 데이터를 가져와서 전처리 하고 병합하기
- 수치형 데이터와 범주형 데이터를 바라보는 시각을 기르기
- 데이터의 형식에 따른 다양한 시각화 방법 이해하기
데이터셋
공공데이터 포털
국가에서 보유하고 있는 다양한 데이터를『공공데이터의 제공 및 이용 활성화에 관한 법률(제11956호)』에 따라 개방하여 국민들이 보다 쉽고 용이하게 공유•활용할 수 있도록 공공데이터(Datase
www.data.go.kr
파이썬에서 쓸 수 있는 엑셀과도 유사한 판다스 라이브러리를 불러옵니다.
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
데이터 시각화를 위한 폰트설정
한글폰트 사용을 위해 matplotlib의 pyplot을 불러옵니다
import matplotlib.pyplot as plt
plt.rc("font", family = "Malgun Gothic")
plt.rc("font", family = "Apple Gothic")
plt.rc("axes",unicode_minus=False)
데이터 로드
데이터 행 열 파악
df_last=pd.read_csv("주택도시보증공사_전국 평균 분양가격(2019년 12월).csv",encoding="cp949")
df_first=pd.read_csv("전국 평균 분양가격(2013년 9월부터 2015년 8월까지).csv",encoding="cp949")
df_last.shape
# (4335, 5)
df_first.shape
# (17, 22)
파일 미리보기
df_first.head()
df_last.head()
df_first.head()
df_last.tail()
데이터 요약하기
df_first.info()
df_last.info()
결측치 보기
df_first.isnull().sum()
df_last.isnull().sum()
데이터 타입 변경
df_last["분양가격(㎡)"]=pd.to_numeric(df_last["분양가격(㎡)"],errors='coerce') #강제로 바꾸기
평당 분양가격 구하기
df_last["평당분양가격"]=df_last["분양가격(㎡)"]*3.3
규모구분을 전용면적 컬럼으로 변경
df_last["전용면적"]=df_last["규모구분"].str.replace("전용면적","")
df_last["전용면적"]=df_last["전용면적"].str.replace("초과","~")
df_last["전용면적"]=df_last["전용면적"].str.replace("이하","")
df_last["전용면적"]=df_last["전용면적"].str.replace(" ","")
df_last["전용면적"]
필요없는 컬럼 제거하기
df_last = df_last.drop(["분양가격(㎡)"],axis=1)
group by로 데이터 집계하기
mean_price = df_last.groupby(['지역명'])['평당분양가격'].mean().sort_values(ascending=False)
mean_price.plot.bar(rot=0,title='지역별 평당 분양가격')
average_price = df_last.groupby(['전용면적'])['평당분양가격'].mean().sort_values(ascending=False)
average_price.plot.barh(rot=0,title="전용면적별 평단 분양가격")
g= df_last.groupby(["지역명","전용면적"])["평당분양가격"].mean().sort_values(ascending=True).unstack()
g.plot.bar(rot=0,figsize=(10,4))
plt.axhline(10000,linestyle=":") # 선그어주는 거
연도, 지역명으로 평당분양가격의 평균을 구합니다.
g=df_last.groupby(["연도","지역명"])["평당분양가격"].mean().sort_values(ascending=True).unstack("연도")
g.plot.bar(rot=0,figsize=(10,4))
g[["서울","경기","인천"]].plot(subplots=True,figsize=(10,4))
320x100
320x100
'빅데이터 관련 자료 > Python' 카테고리의 다른 글
전국 신규 민간 아파트 분양가격 동향 데이터 분석 - (3) (0) | 2022.01.16 |
---|---|
전국 신규 민간 아파트 분양가격 동향 데이터 분석 - (2) (0) | 2022.01.15 |
파이썬 기초용어 정리 - 제어문, 입출력 etc (0) | 2022.01.05 |
Python 기초 용어 정리 - 자료형 (0) | 2022.01.04 |
파이썬 기초 - 8 (0) | 2021.11.12 |