brunch

You can make anything
by writing

C.S.Lewis

by 이영민 Apr 03. 2018

POI 개수가 가장 많은 지역은 어디?

in Yelp Dataset Challenge Round 11

지난 포스팅에서 Yelp round 10 데이터셋 중 business.csv 파일을 통해 Yelp에서 제공하는 장소 카테고리의 종류와 개수에 대해 알아보았다. 이번에는 가장 최신 버전인 Yelp round 11 데이터셋(지금 다운로드 가능) 중 business.csv 파일을 이용해 POI(Points of Interest)의 위치 분포를 확인해 보려 한다.



목차

1. 데이터셋 비교(round 9 vs round 10 vs round 11)

2. 텍스트 정보를 위치로 표현하기

3. POI 개수가 가장 많은 지역은 어디?

4. Outro



1. 데이터셋 비교(round 9 vs round 10 vs round 11)


round 9 데이터와 round 10 데이터는 다른 점이 꽤 있었는데, round 11 데이터는 round 10과 데이터 개수만 다를 뿐(6개 데이터 모두 데이터 양 증가) 제공되는 속성이 동일하다. 그림 1을 보면 round가 진행될수록 제공하는 데이터의 크기(size)가 증가하는 것을 알 수 있다.


그림 1. Yelp round별 데이터셋 비교



2. 텍스트 정보를 위치로 표현하기


그림 1에서 알 수 있듯이 Yelp round 11에는 6개의 데이터가 있는데, 그중 business.csv에는 소중한 위도(latitude)와 경도(longitude) 정보가 있다. 위경도 정보가 있다는 것은 지도상에 표현할 수 있다는 것이므로 ArcMap에서 데이터를 불러와 보았다. 그림 2가 그 결과인데 좌표가 튀는 것들이 있어서 수동으로 확인해 보니 잘못된 위치에 태그된 것들이었다(그림 2에 red box로 표시). 


그림 2. business 데이터 지도 시각화 결과


예를 들어 지도 밖으로 벗어나 있는 왼쪽 상단 포인트 데이터를 보자. 이 데이터의 주소를 통해 확인한 실제 위치는 영국 에든버러였다(그림 3). 그 외에도 남태평양, 브라질, 중국에 찍혀 있는 포인트도 주소를 확인해 본 결과 잘못된 위치에 태그된 케이스였다. 


그림 3. 왼쪽 상단 포인트 데이터 속성 테이블(좌)과 실제 위치(우)



3. POI 개수가 가장 많은 지역은 어디?


3-1. about the data


round 11의 business 데이터 개수는 174,567개로, 위치정보 측면에서 다음과 같은 특징이 있다.


1) longitude, latitude가 없는 데이터: 1개

2) business_id, longitude, latitude가 중복된 데이터: 21개

3) longitude, latitude가 중복된 데이터: 34,232개


즉, business_id는 다르지만(= 다른 POI지만) 경위도가 같은 POI는 (3) - 2)이므로) 34,211개가 있는 것을 알 수 있다. 이는 한 건물에 여러 개의 POI가 위치한 경우로 추측된다.


어찌 됐든 경위도 좌표가 없는 데이터 1개를 빼면 174,566개의 포인트 데이터가 있는 것인데, 이것들을 ArcMap에서 불러와 ObjectID를 부여하고 나서 보니 131,620개로, 42,946개가 누락됐다. 왜지? 이유를 모르겠다. 


3-2. 지역별 POI 개수 확인


아무튼 131,620개의 포인트 데이터를 전 세계 행정구역 폴리곤(출처)에 spatial join하여 지역(행정구역) 별로 POI 개수를 확인해 보았다. 그 결과는 그림 4의 'Join_Count' 칼럼을 보면 되는데, 엄청나게 skewed된 분포를 보이고 있다(그림 5). 그도 그럴 것이 Yelp가 미국에서 주로 사용되다 보니 전 세계 관점에서 보면 skewed 분포를 보일 수밖에 없다. 참고로 그림 4에 랭크되지 않은 지역은 모두 POI 개수가 0개다. 


그림 4. 전 세계 행정구역에 대한 spatial join 결과


그림 5. Join_Count 통계량


POI 개수가 가장 많은 지역은 Arizona주(39,049개)로, 주도인 Phoenix 근처에 특히 많이 몰려 있는 것처럼 보인다. 반면 POI 개수가 두 번째로 많은 Nevada주(24,980개)는 주도인 Carson City보다 전 세계적으로 유명한 도시인 Las Vegas인근에 많이 몰려 있는 것처럼 보인다(그림 6).


그림 6. POI 개수가 가장 많은 지역인 Arizona와 Nevada


최종적으로 지역별 POI 분포를 지도상에 나타내 보았다(그림 7). 그런데 정보(데이터)를 표현하기에 주 단위의 행정구역이 너무 큰 것 같아 그림 8에서 포인트 데이터를 함께 표현했다. 


그림 7. 지역별 POI 분포


그림 8. 지역별 POI 분포(포인트 데이터 포함)


그림 8을 보면 Arizona주-Phoenix 인근Nevada주-Las Vegas 인근Ontario주(캐나다)-Toronto 인근처럼 특정 지역에 POI가 몰려 있는 것을 볼 수 있다.



4. Outro


이 같은 분석을 한 이유는 Yelp  business 데이터를 이용해서 연구를 진행하려 하는데, 미국 어느 지역을 대상 area로 할지 결정하기 위해서다. 즉, POI가 많은 지역을 실험 대상 area로 삼으려 했다. 


데이터를 좀 더 뜯어봐야 확실해지겠지만 일단은 Arizona주의 Phoenix나 Nevada주의 Las Vegas가 최종 실험 area가 될 것 같다. 내심 캘리포니아가 나오기를 기대했건만 캘리포니아주에는 14개의 POI밖에 없다는... ㅜㅜ


대상 area가 정해지면 Bing Map API를 이용해서 Isochrone 데이터를 수집할 계획이다. 이 내용은 다음 포스팅에서 다루겠다. 오늘은 여기까지.


브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari