서울 열린 데이터 광장에서 제공하는 공공자전거 대여 이력 정보 데이터를 활용하여 기본적인 데이터 탐색을 진행해보았다.
데이터 출처 : 서울 열린 데이터 광장 > 서울특별시 공공자전거 대여이력 정보
http://data.seoul.go.kr/dataList/OA-15182/F/1/datasetView.do
상관관계 분석
In [1]:
import pandas as pd
import numpy as np
import matplotlib as mpl
import matplotlib.pyplot as plt
import seaborn as sns
from scipy import stats
# 노트북 안에 그래프를 그리기 위해
%matplotlib inline
# 그래프에서 격자로 숫자 범위가 눈에 잘 띄도록 ggplot 스타일을 사용
plt.style.use('ggplot')
# 그래프에서 마이너스 폰트 깨지는 문제에 대한 대처
mpl.rcParams['axes.unicode_minus'] = False
!apt -qq -y install fonts-nanum
# 한글 깨짐 문제 해결
import matplotlib.font_manager as fm
fontpath = '/usr/share/fonts/truetype/nanum/NanumBarunGothic.ttf'
font = fm.FontProperties(fname=fontpath, size=9)
plt.rc('font', family='NanumBarunGothic')
mpl.font_manager._rebuild()
In [2]:
# colab 에서 google drive 접근
from google.colab import drive
drive.mount('/content/gdrive')
In [0]:
bike = pd.read_csv('/content/gdrive/My Drive/data/bicycle-hourtime-201905-test.csv', parse_dates=["대여일자"] ,encoding='cp949')
In [4]:
bike.columns
Out[4]:
In [0]:
bike["년"] = bike["대여일자"].dt.year
bike["월"] = bike["대여일자"].dt.month
bike["일"] = bike["대여일자"].dt.day
상관관계 분석¶
In [6]:
corrMatt = bike[["요일_New", "대여시간", "대여소번호", "거치대수", "대여구분코드_new", "성별_New","연령대코드_New","이용건수","사용시간", "지구","주중주말구분"]]
corrMatt = corrMatt.corr()
print(corrMatt)
mask = np.array(corrMatt)
mask[np.tril_indices_from(mask)] = False
In [7]:
fig, ax = plt.subplots()
fig.set_size_inches(20,10)
sns.heatmap(corrMatt, mask=mask,vmax=.8, square=True,annot=True)
Out[7]:
In [8]:
figure, axes = plt.subplots(ncols=2, nrows=2)
figure.set_size_inches(12, 10)
sns.distplot(bike["이용건수"], ax=axes[0][0])
stats.probplot(bike["이용건수"], dist='norm', fit=True, plot=axes[0][1])
sns.distplot(np.log(trainWithoutOutliers["이용건수"]), ax=axes[1][0])
stats.probplot(np.log1p(trainWithoutOutliers["이용건수"]), dist='norm', fit=True, plot=axes[1][1])
관련 글 모아보기
[DataSicence/Data Analysis] - [python] 공공자전거 데이터 분석(1) - 데이터 형태 그래프 출력
[DataSicence/Data Analysis] - [python] 공공자전거 데이터 분석(2) - histogram
[DataSicence/Data Analysis] - [python] 공공자전거 데이터 분석(3) - 상관관계 분석
[DataSicence/Data Analysis] - [python] 공공자전거 데이터 분석(4) - pivot data 생성
'Study > Data Analysis' 카테고리의 다른 글
[python] 공공자전거 데이터 분석(4) - pivot data 생성 (0) | 2020.04.28 |
---|---|
[python] 공공자전거 데이터 분석(2) - histogram (0) | 2020.04.26 |
[python] 공공자전거 데이터 분석(1) - 데이터 형태, 그래프 출력 (0) | 2020.04.25 |