더북(TheBook)

3.4.2 요일 및 시간별 승차 통계

다음으로 요일과 시간에 따른 승차 수를 집계해 보자. 뉴욕시 택시 요금 데이터셋에는 pickup_datetime 칼럼 하나에 승차 일자 및 시간 정보가 datetime 형식으로 저장됐다. 이 칼럼을 연, 월, 일, 요일, 시각 요소로 나눠 각각 다른 칼럼에 저장하자.

df['year'] = df['pickup_datetime'].dt.year
df['month'] = df['pickup_datetime'].dt.month
df['day'] = df['pickup_datetime'].dt.day
df['day_of_week'] = df['pickup_datetime'].dt.dayofweek
df['hour'] = df['pickup_datetime'].dt.hour

앞서 판다스로 데이터를 가져올 때 parse_dates 매개변수를 사용한 덕분에 dt 함수로 연, 월, 일, 시각 요소를 손쉽게 분리할 수 있다.

이제 요일별 히스토그램을 그려서 주간 승차 분포를 살펴보자.

import numpy as np
 
df['day_of_week'].plot.hist(bins=np.arange(8)-0.5, ec='black', ylim=(60000,75000))
plt.xlabel('Day of Week (0=Monday, 6=Sunday)')
plt.title('Day of Week Histogram')
plt.show()
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.