Prologue
Tmap API를 통해 하루에 추출할 수 있는 데이터가 1,000건이다. 그래서 이틀에 걸쳐 모든 구간의 좌표 데이터를 얻었다. 그리고 이 구간의 좌표와 신호등, 보호구역의 좌표를 일치시켰다. 구간의 좌표들 중 반경 10m이내에 포함된다면 신호등 또는 보호구역을 그 구간 내에 있다고 매핑한 것이다. 또한 버스와 정류장 좌표의 무결성을 확인해서 데이터 신뢰성을 높였다. 이 과정에서 좌표가 정말정말 중요하구나, 그러니까 데이터의 무결성이 정말 중요하구나를 느꼈다.
노선과 좌표 데이터 무결성 확인
배경
위도경도가 맞지 않는 구간이 보임..
다시 확인
데이터 확인
TAGO(국토교통부 버스정보종합 기관)에 유선으로 문의한 결과,
API로 추출하는 4개 데이터는 매일 업데이트 되고 있음을 확인
가장 아래 2개는 매시각 업데이트 되고 있음
노선번호목록 API로 데이터 받고 수정
API 추출
컬럼명 변경
결측치 확인
첫차, 막차 시간에 1개씩 발견
해당 데이터는 운행되고 있지 않음을 구미BIS 홈페이지에서 확인
이상치 확인
- 첫차시간 시각화
- 막차시간 시각화
- 첫차시간과 막차시간이 00:00인 버스 확인
둘 다 같은 버스였음 - 13번 버스는 운행중 -> 그대로
-CNG 충전소 기점인 666번 버스는 삭제, 운행하지 않는 버스
- 기점과 종점이 같은 노선 확인 -> 순환하는 버스 -> 그대로 살리기
- 정규표현식을 사용해 '(탑승불가)' 문자열을 포함한 노선 찾기
0개
<위도와 경도의 무결성 확인>
2개 데이터 비교
API로 받은 버스정류소 데이터(매일 아침 갱신)와 국토교통데이터 표준버스정류소 위치 데이터(2024.10.28)
정류소 ID를 통해 Join
- 628개의 na값 -> 전체 2123개 정류소 중 628개 정류소가 현재 운행되고 있지 않음
- Join된 것 중 일치하는 좌표 1488개
- 7개 좌표가 잘못됨
어떤 좌표가 정확할까
<좌표가 다른 정류장>
- 상모고등학교앞
API 승!
<좌표가 거의 비슷한 6개 정류장>
- 다른 좌표들은 소수점 3자리 이하의 차이로 다들 비슷함
-> API 좌표로 진행하기로 결정
API 좌표에서 변경사항
- 구미중학교 건너의 좌표는 36.148156, 128.331110 으로 대체
- 구간 거리 측정 시 이상치로 나왔던 내고리, 내고1리입구건너 좌표 대체
'Today I Learned' 카테고리의 다른 글
[TIL] 25.03.21 웹크롤링으로 버스 출발시간표 데이터 구하기 (0) | 2025.03.22 |
---|---|
[TIL] 25.03.20 구미 정류소 좌표 데이터 다시 정리 (0) | 2025.03.20 |
[TIL] 25.03.18 Geopandas를 사용하여 점 좌표를 선 좌표에 매핑하기 (0) | 2025.03.19 |
[TIL] 25.03.15 구미버스 도착시간 데이터 요청 (0) | 2025.03.15 |
[TIL] 25.03.13 API로 불러온 데이터 하나로 합치기 (0) | 2025.03.13 |