2019-01-웹/파이썬프로그래밍 Term Project 헬당선

  • 지하철 시간표상의 도착 시간과 실제 지하철 도착시간 비교

지하철 노선 코드

  • 1001 : 1호선
  • 1002 : 2호선
  • 1003 : 3호선
  • 1004 : 4호선
  • 1005 : 5호선
  • 1006 : 6호선
  • 1007 : 7호선
  • 1008 : 8호선
  • 1009 : 9호선
  • 1063 : 경의중앙선
  • 1065 : 공항철도
  • 1067 : 경춘선
  • 1071 : 수인선
  • 1075 : 분당선
  • 1077 : 신분당선

python

  • metroIds.py : 지하철 노선 코드와 역 ID, 역명 획득
  • metroCodes.py : data/metroId에 역코드, 역외부코드 추가
  • metroIdTimetable.py : 서울시 지하철 API를 바탕으로 지하철역별 시간표 획득
  • metroLocation.py : 서울시 지하철 API를 바탕으로 지하철 노선별 위치정보 획득
  • metroArrival.py : 서울시 대중교통 API를 바탕으로 지하철 역별 도착정보 획득
  • getTimesum.py : 획득한 지하철 도착정보를 바탕으로 지하철 노선별, 역별, 열차번호별로 도착시간의 합 계산
  • getTimeaverage.py : getTimesum.py를 통해 획득한 지하철 도착시간의 평균 계산
  • getDifference.py : getTimeaverage.py를 통해 획득한 지하철 도착시간의 평균값과 지하철 시간표간의 오차 계산
  • getGraph.py : getDifference.py를 통해 획득한 오차를 지하철 역별로, 지하철 노선별로 계산(평일, 토요일, 일요일 구분) 후 그래프 이미지 저장
  • fixUpdownCode.py : 시간표상의 상/하행과 서울시 대중교통 API상의 상/하행이 서로 일치하지 않는 경우가 있어, 이미 수집된 데이터에 대해서 상/하행 코드 변경
  • editSeongsu.py : 유일하게 2호선 성수역에서 열차 번호가 중복되는 현상 발생, 실제 데이터는 성수역을 기점으로 하는 경우만 수집하기 때문에, 성수역의 시간표를 변경
  • deleteDuplicated.py : 데이터 수집시 열차의 위치와 상태가 변하지 않아 데이터의 중복발생, 이를 해결하기 위해 중복된 데이터를 제거하는 기능

data

data/raw

  • 가공전 원본 데이터 저장

data/metroId

  • 지하철 노선별로 지하철 노선 코드, 역 ID, 역명, 역코드, 역외부코드 저장

data/timetable

  • (지하철 노선 코드)_(역코드)_(요일)_(상/하행).csv
  • 열차 번호, 출발 역코드, 종착 역코드, 도착 시간, 출발 시간, 급행여부 저장

data/location/(date)

  • 지하철의 도착시간 데이터 저장
  • 역 ID, 열차 번호, 종착 역명, 도착 시간, 요일, 상/하행 저장

data/timesum

  • (지하철 노선 코드)_(역 ID)_(요일)_(상/하행).csv
  • 열차 번호, 종착 역명, 도착 시간의 합, 카운트 저장

data/timeaverage

  • (지하철 노선 코드)_(역 ID)_(요일)_(상/하행).csv
  • 열차 번호, 종착 역명, 도착 시간 평균, 카운트 저장

data/result

  • (지하철 노선 코드)_(역명)_(요일)_(상/하행).csv
  • 역명, 종착역, 오차(초), 시간표상의 도착시간

data/img

  • (지하철 노선 코드)_(요일).png : 해당 노선의 역별 해당 요일의 평균 오차 비교
  • all_(요일).png : 전체 노선의 평균 오차 비교
  • except_1063_(요일).png : 경의중앙선의 오차가 월등히 높아, 다른 노선과의 비교가 힘드니, 경의중앙선을 제외한 다른 노선의 평균 오차