Original Article by David Corrigan (NYC Data Science Academy Blog) Translated by JJ Hwang
서론
요즘은 고객이 후기나 의견을 남길 수 있는 웹사이트들이 많습니다. 옐프나 트립어드바이저와 같은 음식점 후기 사이트들은 식사 후에 고객들이 “좋았다”, “별로였다” 등의 후기를 남기는 가장 인기있는 사이트가 되었습니다. 인근 고객들이나 여행객들이 식사할 곳을 찾거나 새로운 음식을 경험하는 데 큰 도움이 되고 있습니다.
음식점에 관한 데이터를 풍부하게 수집하고 분석할 수 있다면, 이러한 데이터는 음식점 비즈니스의 발전에 중요한 요소가 될 것입니다. 본 분석은 트립어드바이저에 등재된 미국 도시 상위 60곳의 음식점 시장 데이터를 크롤링하여
⊙ 평균 후기 점수
⊙ 음식의 종류
⊙ 가격
⊙ 후기 수
와 같은 핵심 요소를 도시별 및 음식점별로 수집합니다. 이렇게 수집된 데이터를 분석하여 아래와 같은 중요한 질문에 답합니다.
1. 어떤 종류의 음식이 특정 도시에서 가장 지배적인가?
(음식점 수, 평균 후기 점수, 한 음식점 당 후기 수 등으로 측정)
2. 각 도시에서 어떤 음식점 비즈니스의 성과가 저조한가?
(수가 현저히 적으면서 후기 점수도 낮은 음식점 등으로 측정)
3. 어느 특정 도시에서 어떤 음식점 비즈니스가 성장 잠재력을 갖고 있는가?
(현 음식점 수는 적지만 높은 고객 후기 평점을 받고 있는 음식점)
4. 미국에서 가장 인기있는 음식 종류는 무엇이고 가장 인기 없는 음식 종류는 무엇인가?
이러한 분석을 위해 트립어드바이저에 등재된 미국 상위 60개 도시에 있는 약 12만개의 음식점 데이터를 크롤링하였습니다. 데이터 전처리를 거친 후 상위 50개 도시로 범위를 조정하여 분석을 시도하였습니다.
크롤링 과정
크롤링을 위해 세 개의 파싱 기능이 있는 스크래파이를 활용하였습니다. 트립어드바이저는 미국의 모든 도시가 내림 차순으로 정렬되어 있어서, 대규모 데이터 크롤링을 진행하기에 비교적 용이한 웹 구조였습니다. 첫번째 작업은 상위 도시 리스트에서 각 도시로의 링크를 파싱하는 것부터 시작했습니다.
이후 이 링크를 두번째 파싱 기능으로 이전시켜 각 도시의 “음식점 메인 페이지”를 파싱했습니다. 메인 페이지에는 상위 30개의 음식점이 나열되어 있으며, 각 음식점 상세 페이지로 이동하는 링크도 수집하였습니다. 데이터를 수집하는 본 작업 이후 결과물은 하나의 라인이 하나의 음식점을 나타내주는 JSONL 파일로 저장하였습니다. 이 파일은 아래의 예시처럼, 판다스 데이터프레임으로 변환될 수 있습니다.
데이터 분석과 시각화
이후 작업은 데이터프레임의 포맷화와 정제입니다. 음식 리스트 데이터는 두 개의 버전으로 나누었는데, 하나는 각 데이터 열이 하나의 음식점을 나타내는 버전입니다. 다른 하나는 각 데이터 열이 하나의 음식점 내의 하나의 음식을 나타내는 버전이어서, 여러 음식을 서비스하는 음식점은 여러 데이터 열을 차지하게 됩니다. 분석의 목적에 따라 다른 버전이 채택됩니다.
우선적으로 미국 상위 50개 도시의 데이터를 단순 비교해 보았습니다. 관광객이 많이 오는 도시 (올랜도, 라스베가스, 뉴올리언즈, 뉴욕 등)는 한 음식점 당 고객 후기의 수가 가장 많은 경향을 보였는데, 이는 휴가를 보낸 도시와 음식점에 대한 후기의 건수가 많고 그 점수가 높다는 가정을 어느 정도 뒷받침해줍니다. 50개 도시를 총합하여 가장 많이 서비스되고 있는 음식의 종류는 미국, 아시아, 이탈리아 요리와 채식 요리를 비롯한 건강 다이어트식이었습니다. 이 데이터는 어느 한 도시에서 어떤 음식이 많이 서비스되고 있는지에 대한 일반화에도 적용되었습니다.
이러한 데이터 정제와 분석을 바탕으로, 다양한 데이터 시각화 표현이 가능했습니다. 먼저, 어떤 한 음식에 대해 미국의 어느 도시들이 높은 평가 (평균 후기 점수)를 받았는지 확인해 볼 수 있었습니다. 이는 인기있는 음식과 도시의 연관성을 발견하는 중요한 지표가 될 수 있습니다. 예를 들어 해산물 음식점은 해안가에 위치한 도시에서는 높은 후기 점수를, 피닉스 같은 내륙 도시에서는 낮은 후기 점수를 받을 것이라는 예상과 맥을 같이 할 것입니다.
이어 어느 한 도시를 정하여 그 도시에서 어떤 음식이 강세이고 어떤 음식은 약세인지를 시각화할 수 있었습니다. 예시로 볼티모어에서는 라틴 음식점이 부족하다는 것과 상대적으로 해산물 음식점 및 그리스 음식점이 인기있음을 확인하였습니다.
결론
이러한 방식을 활용하면 도시에 대한, 또한 음식에 대한 데이터 시각화가 가능합니다. 음식점 비즈니스를 준비하거나 운영하는 분들에게는 향후 성장을 기획하기 위한 좋은 시장 조사 자료가 될 것이라고 생각합니다.
요약해보면, 미국 상위 50개 도시의 10만개 음식점 데이터는 웹크롤링이라는 방식으로 취득하기에 적합한 항목이며, 기본적인 시장 조사와 분석에 활용될 수 있다는 것입니다. 가격과 같은 재무회계적 데이터, 좀 더 상세한 고객 후기의 감정 분석 데이터와 결합시킨다면, 음식점 비즈니스의 발전을 위한 유용한 자료가 될 것으로 기대합니다.
* 본 분석에 활용된 데이터와 소스 코드는 이 곳에 올려 놓았습니다.
=========================
웹크롤링, 웹스크래핑, 웹데이터 수집, 빅데이터에서 최고의 서비스를 제공합니다.
지금 바로 홈페이지를 방문하셔서, 문의 요청해 주십시오!
Comments