- 프랑스 서브레딧의 “기차역에 가까울수록 케밥이 맛없다”는 가설을 파리 데이터로 검증하기 위해 케밥 식당 평점과 가장 가까운 철도·지하철 출입구까지의 보행 거리를 비교함
- 분석은 OSMnx로 보행 네트워크와 역 출입구를 수집하고, Google Places API로 “kebab” 검색 결과의 위치·평점 데이터를 확보하는 방식으로 진행됨
- Places API의 반경 검색은 엄격한 경계가 아니라 bias로 동작해, 1km 간격 육각 샘플링과 페이징으로 최종 400개 케밥 제공 업소를 모음
- NetworkX 최단 경로로 계산한 보행 거리와 평점의 Pearson 상관계수는 전체 0.091, IQR 이상치 제거 후 0.098, 지하철 제외 시 0.001에 그침
- Google 리뷰는 맛만 반영하지 않고 관광·리뷰 조작·리뷰 수·식당 유형의 영향을 받을 수 있어, 파리 데이터만으로는 가설을 지지하기 어려움
가설과 분석 범위
- 출발점은 프랑스 서브레딧에서 공유된 “기차역에 가까울수록 케밥이 맛없다”는 가설임
- 원래 게시물은 비교적 작은 서브레딧 규모에 비해 반응을 얻었고, 댓글에는 가설에 동의하지 않는 경험도 함께 있었음
- 비공식 “연구” 대상지는 Paris, France로 정함
- 원래 가설이 프랑스어 게시물에서 나왔기 때문임
- 파리 도심은 기차역·지하철역과 케밥 가게가 많아 표본 확보에 유리함
- 분석 목적상 프랑스 현상으로 가정함
보행 네트워크와 역 출입구 데이터
- OSMnx로 파리의 보행 네트워크를 내려받아 저장함
- 대중교통 이용 맥락을 고려해
network_type="walk"를 사용함 - 데이터는 EPSG:32631, UTM zone 31N으로 투영됨
- 대중교통 이용 맥락을 고려해
- 역 출입구는
railway=subway_entrance와railway=train_station_entrance를 기준으로 수집함- 장거리 중앙역뿐 아니라 지하철 출입구도 포함함
- 결과 중 Point geometry만 필터링해 사용함
- 산출물은 QGIS에서 확인할 수 있도록 파일로 저장함
Google Places API로 케밥 업소 수집
- 식당 데이터는 Google Places API와 Google 리뷰를 사용함
- Google 리뷰는 봇, 조작, 음식 외 경험 요소의 영향을 받을 수 있지만 당시 선택 가능한 실용적 데이터로 판단함
- Yelp API는 비용 문제로 사용하지 않음
- Places API에는 폴리곤 내부 검색이 없고, 점과 반경 기반 검색만 있음
- 반경은 결과를 엄격히 자르는 hard cut-off가 아니라 bias로 동작함
- 이 때문에 파리 전체를 샘플링하는 grid search 방식이 필요해짐
- 파리 행정경계에는 서쪽 공원과 동쪽 스포츠 시설 같은 큰 녹지가 포함되어 있었고, 해당 영역에는 케밥 업소가 거의 없어 API 비용을 줄이기 위해 제외함
- 샘플링은 1km 수직 간격의 육각 배치로 구성함
- 검색 반경은
500m * √3 ≈ 866m로 설정함 - 총 99개 샘플 포인트를 사용함
- 검색 반경은
- 처음에는 페이징 없이 322개 결과를 얻었고, 누락된 업소가 보여 페이징 적용 후 400개 케밥 제공 업소를 확보함
- “kebab” 검색 결과에는 이름에 kebab이 들어간 곳, Mediterranean으로 분류된 곳, 리뷰에 kebab 언급이 많은 곳 등이 포함됨
- Pizza Hut처럼 케밥 피자만 제공할 가능성이 있는 사례도 일부 있었음
- 원본 API 결과는 연구 범위로 clip하고, 평점과 리뷰 수를 숫자로 변환하며, 리뷰 수가 0인 항목은 제외함
보행 거리 계산
- 각 케밥 업소에서 가장 가까운 역 출입구까지의 보행 거리를 계산하는 것이 목표였음
- 모든 업소와 모든 출입구 조합을 라우팅하면 오래 걸리므로, 공간 인덱스로 후보 출입구를 먼저 줄임
- GeoPandas의
sindex를 사용해 식당 반경 1km 내 출입구를 찾음 - 후보를 직선거리 기준으로 정렬한 뒤 가까운 3개만 사용함
- GeoPandas의
- NetworkX로 보행 네트워크의 최단 경로를 계산함
- 식당과 출입구를 각각 가장 가까운 네트워크 노드에 매핑함
- 경로 길이에 식당·출입구 지점과 네트워크 노드 사이의 거리도 더함
- 후보 출입구 중 최단 거리 값을 해당 식당의 거리로 저장함
- 결과 데이터는 QGIS와 출력 로그로 확인했고, 계산 결과의 정확도에는 충분히 확신을 가짐
결과: 상관은 매우 약함
- 전체 데이터에서 거리와 평점의 Pearson 상관계수는 0.091임
- 수치 방향만 보면 “가까울수록 맛없다”는 가설과 맞을 수 있음
- 다만 상관이 매우 약해 통계적으로 의미 있다고 보기 어려운 수준임
- 이상치가 Pearson 상관에 큰 영향을 줄 수 있어 IQR fencing으로 일부 이상치를 제거함
- 제거 후 상관계수는 0.098로 소폭 증가함
- 원래 가설이 지하철을 포함하지 않았을 가능성을 고려해 지하철역을 제외하고 다시 계산함
- 이 경우 상관계수는 0.001로 더 낮아짐
- 절대적으로 평점이 낮은 식당 중 일부가 역과 매우 가까운 사례는 있었지만, 전체 상관은 가설을 뒷받침하기에 너무 약함
한계와 후속 분석 가능성
- Google 리뷰는 케밥 맛의 객관적 측정치가 아님
- 직원, 청결도, 주변 환경 같은 식사 경험 요소가 평점에 영향을 줄 수 있음
- 온라인 조작과 리뷰 조작 가능성도 남아 있음
- 관광 요인도 결과에 영향을 줄 수 있음
- 현지 단골이 더 엄격할 수도 있고, 관광객이 다른 방식으로 평점을 줄 수도 있음
- 어느 쪽으로도 단정하지 않음
- Google 검색 결과는 어느 정도 적절했지만 완벽하지 않음
- 쿼리 결과의 모든 장소가 어떤 형태로든 케밥을 제공하는 것으로 보였음
- 다만 케밥 피자 같은 변형 사례가 포함될 수 있음
- 리뷰 수는 분석에 영향을 줄 수 있지만, 당시에는 이를 적절히 반영하는 방법을 확신하지 못함
- 데이터 공유는 Google TOS 위반 가능성 때문에 하지 않음
- 대신 재현에 필요한 코드 흐름은 공개됨
- 원래 프랑스 게시물의 반대 댓글 중에는 파리 역 근처의 좋은 케밥 사례가 여럿 있었고, 영어로 소개한 사용자가 제공한 예시는 가설을 더 강하게 보이게 할 수 있음
- 파리의 임대료, 임금, 관광, 인구 밀도 같은 조건이 초기 예상보다 결과에 더 큰 영향을 줬을 가능성이 있어 후속 분석 여지가 남아 있음