본문 바로가기

Pandas/실전

판다스 - 지하철 공공데이터 분석 (2020년 1월 ~ 5월) : 월별 승객이 제일 많은 역(노선) 찾기

반응형

https://steadiness-193.tistory.com/109

 

판다스 - 지하철 공공데이터 분석 (2020년 1월 ~ 5월) : 전처리

데이터 출처 https://data.seoul.go.kr/dataList/OA-12914/S/1/datasetView.do 서울시 지하철호선별 역별 승하차 인원 정보 데이터 이용하기-서울시 지하철호선별 역별 승하차 인원 정보 data.seoul.go.kr 1. 데이..

steadiness-193.tistory.com

 

위에서 만들어낸 df를 불러온다.

 

 

 

우선 전체적으로 total을 기준으로 내림차순해서 살펴보자

 

 

 

역시 2호선 강남이 압도적으로 승객수가 많다.

 

 

 

 

 

 

 

 

 

승하차 승객수가 가장 많은 상위 10개 역 추출

 

 

역명으로 groupby를 해서 합을 구한 다음

 

total을 기준으로 내림차순해서 출력한다.

 

 

 

이제 위 데이터프레임의 인덱스만 추출해서

 

top10_stations에 저장한다.

 

 

 

이제 isin 메서드를 이용해 top10_stations만을 뽑아내는 불린 시리즈를 만들어 낸다.

 

 

 

 

https://steadiness-193.tistory.com/23

 

판다스 - isin()

데이터 불러오기 sibsp의 값이 3 또는 4 또는 5인 행만 보고 싶다면 방법1. 3개의 불린 리스트를 이용한다. 1. 불린 리스트(mask변수)를 총 3개를 만든다. 2. 이를 데이터프레임 필터 조건으로 넣되, | ��

steadiness-193.tistory.com

isin 메서드는 위 포스팅 참조

 

 

 

 

이제 기존 df에 top10_stations_cond를 적용해서 추출한다.

 

 

총 3360개의 행이 나왔다.

 

 

 

 

 

 

 

상위 10개 역의 모든 노선 중 상위 5개의 노선 추출

 

하나의 역이 여러개의 노선에 해당할 수 있다.

 

예를 들어 홍대입구역은 2호선에도 있지만 공항철도 1호선에도 있다.

 

따라서, 승객수 기준 상위 역을 뽑아낸 것처럼

 

top10에서 승객 수가 많은 5개의 노선만 뽑아보자

 

 

top10 데이터프레임의 노선명은 총 11개가 있다.

 

 

 

이를 groupby에 이용한 다음

 

승객 수의 합을 내림차순해서 보자

 

 

 

head로 상위 5개만 추출하면 아래와 같다.

 

 

상위 10개 역의 노선에서

 

승객이 가장 많은 순서대로 노선을 뽑아냈다.

 

 

 

이제 이 5개의 노선을 top5_line에 넣고

 

top5_line을 뽑아내는 불린 시리즈(top5_line_cond)를 만들자

 

 

 

 

잘 만들어진 두개의 조건을 & 를 이용해 df를 걸러내보자

 

 

                   top10_stations : 강남, 잠실(송파구청), 홍대입구, 고속터미널, 서울역, 신림, 선릉,

                                               사당, 구로디지털단지, 가산디지털단지

 

                   top5_lines        :  2호선, 7호선, 3호선, 1호선, 4호선

 

 

 

 

 

위 두개 조건을 모두 충족하는 df를 top 변수에 넣는다.

 

 

말 그대로 가장 핫한 역과 노선을 뽑아냈고

 

총 1976개의 행이 나왔다.

 

 

 

 

 

 

top 데이터프레임을 total 기준으로 내림차순해서 봐보자

 

 

역시 2호선의 강남이 제일 핫하다.

 

 

 

 

 

 

월별 / 역별 승객수 합

 

 

피벗테이블을 이용해 인덱스에는 월,

 

컬럼에는 역을 넣어서 총 승객수의 합을 확인할 수 있다.

 

 

 

 

 

위 데이터 역시 히트맵으로 시각화해보자

 

 

1, 2월에 강남 다음으로 잠실, 홍대입구에 유동인구가 제일 많아보인다.

 

 

강남이 너무 압도적이니 강남을 제외하고 다시 히트맵으로 보자

 

 

 

 

강남 제외 히트맵

 

강남을 제외하니 구로디지털단지에도 유동인구가 많아짐을 볼 수 있다.

 

 

반응형