2015년 1월 27일 개정 1판 안내
처음 공개된 분석과 글에 있었던 여러 오류를 바로 잡았습니다. 다음 문제점들을 수정하였습니다. 코멘트 주신 분들께 감사드립니다. ^^
- 사각형 cartogram 지역 재배치
- 서울시 노원구, 도봉구 위치 바로 잡음. (오유 자리****범 님)
- 강원도 춘천, 홍천 위치 바로 잡음. (오유 모* 님)
- 서울시 구로구, 금천구 위치 바로 잡음.
- 1월 26일 기준 데이터로 업데이트. (맥도날드와 롯데리아 매장이 많이 추가되었습니다.)
- KFC 석촌역점이 처리 도중에 누락됐던 문제 바로 잡음.
- 상관계수 분석을 잘못 뭉뚱그려 설명한 부분을 수정하여 구체적인 것으로 교체. (트위터 for*********er 님)
- 인구밀도-버거지수 스캐터 차트에서 분포가 좀 더 잘 보이게 LOESS 트렌드선 추가.
- 그림에서 일관성이 떨어지거나 부정확한 용어들이 섞여있던 것 수정.
그리고, 한 가지 덧붙이고 싶은 말은, 이 글은 진지한 어조와 형식으로 되어 있긴 하지만, 유머 또는 광고(IPython/pandas) 분류를 의도하고 쓴 글입니다. 결과에 대해 경영/사회 측면에서 심각하게 고민하실 정도의 정밀한 연구가 아니니, 구체적인 것은 해당 분야 전문가들이 제대로 분석하신 뒤에 보셔야 합니다. ^_^;;
읍내 버스터미널에 가면 롯데리아가 언제나 반갑게 맞이한다. 그렇게 보기 쉽던 롯데리아가 희한하게도 강남이나 신촌 같은 곳에서는 뜻밖에 찾아보기 힘들다. 작년 가을, 트위터 @RioterOfMiku 님은 이 현상을 한 눈에 이해되는 아주 강렬한 도시 발전 지수로 정리했다.
누구든 대략 듣자마자 “그래? 그런 것 같네~” 정도론 동의하게 되는 간단하면서도 정보가 있는 지수인데. 어느 날 연구실에서 오랜만에 햄버거를 시켜 먹다가 문득 생각나서 “진짜 그럴까!?” 생각에 좀 더 구석구석 뒤져보기로 했다.
구체적인 것은 분석 과정을 담은 IPython 노트북을 올려두었으니 관심있는 분들은 여기를 좀 더 보도록 합시다. ^_^
전국 시군구 버거지수
우선, 전국 시군구에 대한 버거지수를 진짜로 계산해 본 적은 없으니 실제로 계산해 보자. 각각 롯데리아, 버거킹, 맥도날드, KFC 홈페이지에서 2015년 1월 26일 기준 데이터를 긁어서 계산했다.
정말 느끼는 대로 강남, 서초는 하늘을 찌르는 “버거지수”를 보여준다. 즉, 강남과 서초에는 롯데리아에 비해 버거킹, 맥도날드, KFC가 훨씬 많다. 다른 지역들은 이 비율이 대략 0.5를 넘는 곳도 드문 와중에, 4배를 넘어선다. 다른 지역에서도 주로 “시내”권인 중구 지역이 버거지수가 좀 더 높다. 하나 의외인 곳은 강원도 홍천군이 2.0점! 여기는 강남, 서초 다음으로 전국에서 3번째로 높은데… 매장 목록을 보면 대명비발디파크에 있는 버거킹 2개 때문이다.; 강원도 정선군은 색은 상당히 짙은 게 높아 보이지만, 롯데리아와 KFC가 1개 씩으로 롯데리아 수가 적어서 지수가 높게 나온 영향이다.
그렇다면 왜 이런 현상이 일어날까? 롯데리아가 시골을 좋아하는 걸까, 아니면 버거킹 등이 도심을 유난히 좋아하는 걸까? 아니면 또 다른 이유가 있을까? 좀 더 자세히 파 보자.
각 브랜드 별 매장 분포
우선 어느 버거 브랜드 매장이 어디에 있는지 수를 봐야한다.
역시 롯데리아 매장 수가 압도적으로 많다. 버거킹, KFC, 맥도날드 다 합쳐도 롯데리아 매장 수에 미치지 못한다. 단지 롯데리아 매장 수가 많기 때문에 좀 더 인구가 적은 지역까지 커버할 수 있다는 가설이 설득력이 생기는 차이다. 각 브랜드별 매장 분포를 좀 더 자세히 지역별로 살펴보자.
역시.. 롯데리아 색은 아주 예쁘게 고르게 분포한 반면에, 버거킹+맥도날드+KFC (줄여서 BMK) 모두 합쳐도 매장이 하나도 없는 곳이 많다. 롯데리아는 서울의 한 구보다 많은 곳이 지방에도 많은 반면에, BMK는 광역시 이상 도시보다 매장이 많은 지방이 거의 없다. 광역시 내에서도 다른 구들에 비해 “중구”에 쏠리는 현상이 BMK가 롯데리아보다 훨씬 뚜렷하다.
브랜드별로 각각 어느 브랜드가 어느 것과 비슷한지 좀 더 자세히 살펴보자.
피어슨 연관성 계수로 봤을 때, 의외의 결과! 맥도날드는 KFC나 버거킹보다 롯데리아에 더 가깝다. KFC와 버거킹은 서로 분포가 비슷하다. 맥도날드가 완전 도심보다 서울 안에서도 주로 주택가 상가에 많이 분포하는 걸 생각해보면 그럴 수도 있겠다 싶다. 버거지수 분자에서 맥도날드를 빼는게 더 원래 의도에 맞을 것 같다.
롯데리아 매장은 좀 더 인구가 적은 곳에서도 열 수 있는 것일까?
인구밀도와 버거지수의 관계
롯데리아가 인구밀도가 낮아도 먹고 살 수 있다면, 버거지수와 인구밀도가 어느 정도 상관관계가 있을 것이다. 비교해보면 진짜 그렇다! (다음 그림)
인구밀도가 높을 수록 (오른쪽으로 갈 수록), 버거지수가 높다. 켄달의 타오값도 0.618이나 된다. +_+ 원인은 분모 (롯데리아)에 있을 수도 있고 분자 (BMK)에 있을 수도 있겠다. 어느 것이 더 원인일까?
인구수에 정확하게 비례하는 모델로 매장을 흩어놓았을 때에 비해 얼마나 실제 매장이 많은지 (Y축)을 보면, 아주 강한 상관관계가 나오지는 않지만, 롯데리아는 어느 정도 이상 되면 인구밀도가 높을 수록 매장 수가 약간 줄어드는 경향이 있다. BMK의 경우에는 너무 흩어져 있어서 확실히 뭐라고 할 수는 없지만, 인구밀도가 낮은 지역에서 매장이 아예 없는 점이 상당히 많다. 전체 매장 수 자체가 적다보니 인구가 적은 지역을 커버하지 못하는 것으로도 볼 수 있겠다. 롯데리아가 인구밀도가 높을 수록 약간 줄어드는 것은 매장 간의 최소 거리를 고려하면 포화된 것으로도 해석할 수 있는데, 정확하게 보려면 좀 더 실제 데이터를 보고, 유동인구, 세대별 인구 같은 걸 봐야겠지만… 오바 같아서 그만 -ㅁ-;;
매장수 차이의 효과
마지막으로, 그냥 BMK가 각각 매장수가 적다보니 인구밀도가 적은 지역까지 진출하지 못한 효과가 버거지수를 만들 수 있는지 보기 위해, 각 시군구를 분할하면서 인구가 가장 많은 곳에 새로 매장을 만드는 식으로 시뮬레이션 했을 때 버거지수가 어떻게 나올지 확인해 보자. (자세한 것은 코드 확인.)
시뮬레이션에서 인구가 적어서 버거지수가 낮은 것으로 나온 곳은 실제 버거지수도 낮은 경향이 있었다. 하지만, 높게 예측된 곳 중에서는 인구가 큰 정보를 주지는 못했다. 특이한 점들을 몇 군데 보면, 다음 지역은 인구만 이용한 시뮬레이션에서 버거지수가 낮게 예측됐지만, 실제로는 매우 높은 점수가 나왔다. 과천시 빼고는 모두 인구에 비해 유동인구가 아주 많은 지역들이다.
시군구 | 롯데리아 | 버거킹 | 맥도날드 | KFC |
강원도 홍천군 | 1 | 2 | 0 | 0 |
인천광역시 중구 | 6 | 2 | 5 | 2 |
부산광역시 중구 | 4 | 1 | 1 | 3 |
경기도 과천시 | 3 | 1 | 1 | 1 |
강원도 정선군 | 1 | 0 | 0 | 1 |
대구광역시 중구 | 7 | 1 | 2 | 4 |
다음 지역들은 인구를 기반으로 한 시뮬레이션에서는 아주 낮지는 않은 버거지수가 나왔지만, 실제 버거지수는 매우 낮은 지역이다. BMK의 입지 조건에 맞는 곳이 없으려나..? 이유는 좀 더 살펴봐야겠다. -O-
시군구 | 롯데리아 | 버거킹 | 맥도날드 | KFC |
충청남도 보령시 | 3 | 0 | 0 | 0 |
경상북도 영천시 | 2 | 0 | 0 | 0 |
대구광역시 달성군 | 6 | 0 | 0 | 0 |
결론
롯데리아는 인구밀도가 많은 곳에서 오히려 인구 대비 매장수가 약간 적은 경향이 약간 있었고, BMK의 매장수가 전국을 덮을 수 있을 정도로 많지 않은 것이 또한 버거지수를 가르는 요인이었다. 다만, 이 글에서는 연관성에 집중했을 뿐, 이 현상의 원인에 대한 구체적인 인과관계를 알 수는 없으므로 해석은 좀 더 조심스러워야 한다. 또한, 시군구경계로 아주 단순화했고 유동인구나 인구 구조 등의 특징을 충분히 고려하지 못했기 때문에, 상권이나 구체적 인구 자료를 더 살펴봐야 할 것 같다. 이것은 소스와 데이터를 공개했으니 후행연구로 누군가… ㅎㅎ;
계정 주인 되는 사람입니다. 재미 삼아 해본 말이었는데 실제로도 연구가 가능했다니 놀랍네요. 고생 많이 하셨을텐데 관심 가지고 이런 연구를 해주셔서 감사합니다 (__)
좋은 아이디어 내 주셔서 감사합니다. ^^ 재미있게 보았습니다~
정말 열심히 만들었고 수고했는데..
별로 쓸모가 없음..
노력에는 정말 감탄에 감탄을 거듭합니당
넵. 원래 쓸모없음을 지향한 것이라.. 감사합니다. ㅋㅋ
잘 봤습니다.
감사합니다~
위 웹싸이트 주소 들어가보시면 작성자분의 글을 일부 캡쳐하여 올렸습니다.
동의 없이 캡쳐하여 죄송한 말씀을 먼저 드리고,
저 게시글을 그대로 둬도 괜찮으신지 문의드리니다 혹 불편하시다면 글삭제를 하겠습니다.
아 링크는 닉네임에 걸리네요ㅋ
직링크는 http://todayhumor.com/?bestofbest_194814 입니닷
사이트에 소개해 주셔서 감사합니다. ^^
글 내용이 나중에 수정될 수도 있기 때문에, 다른 분들이 다시 찾아올 수 있게 원래 링크만 어딘가에 살짝 살려주시면 어디든 퍼 가셔도 괜찮습니다.
올리신 글 정도면 좋을 것 같습니다.
예 감사합니다
원래 링크는 3번째 댓글에 올려놓았습니다
와우~ 정말 좋은 자료네요!!
제가 활동하는 경제관련 카페에 올려도 괜찮겠습니까?
상업적인 카페는 아니고, 사회 경제 문화 등 여러가지 현상을 토의하는 곳입니다.
예. 원래 글이 계속 바뀔 수도 있어서 원래 글 링크만 적절히 해 주시면 퍼 가셔도 괜찮습니다.
다만, 이 글은 형태상으로는 진지하지만 실제로 의도는 유머에 가까운 소재를 가지고 분석 도구(IPython, pandas, matplotlib)에 대한 가벼운 예시를 보여주는 것이라서 내용이나 분석의 흐름은 학문적으로 엄밀하지 못합니다. 진지하게 해석하시면 안 된다는 사실을 충분히 언급해 주셔야 할 것 같습니다.
허락해 주셔서 감사합니다^^
http://cafe.daum.net/urifuture/XlVL/820
여기에다 퍼 날랐습니다.
좋은 하루 되세요^^
이런 댓글 수정이 안되는군요.
링크가 잘못갔네요^^
http://cafe.daum.net/urifuture/XoB6/293
여기로 퍼갔습니다~
좋은 분석 감사합니다.
제가 유통업에 종사하면서 지켜본 결과로는 맥도널드와 버거킹는 직영, 롯데는 개인가맹 중심의 출점이 이와 같은 숫자가 나온걸로 생각 됩니다.
좋은 코멘트 감사합니다. ^^;
참고로 KFC 는 맥도날드를 주요 경쟁상대로 보더군요.
상관관계가 높게 나온 것을 보니 그 이유를 이제야 알겠더군요.
처음에는 치킨회사가 왜 햄벅회사를 경쟁사로 보지? 했더니..
치킨회사들끼리 비교해 보는 것도 재미있겠네요.. ^^;
햐, 진짜 이건 엄청나네요. 햄버거 점포로 도시 데이터 분석이라니. 게다가 각 지점의 상징성으로 연결될 여지도 있고 아주 좋은 얘기를 던졌다고 생각해요. 진짜 공론화 해봤으면 좋겠네요.
크.. 재미있게 봐 주셔서 감사합니다. 아직은 부족한 부분이 많아서 모든 부분이 정확한 분석은 아닙니다. ^^;
재미있게 봤습니다.^^ 커피전문점 버전으로 만들어도 비슷한 결과가 나올 거 같네요.
분모는 역시 카페베네.
크크; 네~ 다음에 누군가 해 보면 재미있을 것 같네요.
CU대 GS25나 미스터피자 대 피자헛 같이 뭐가 나올 지 한 번에 감이 안 오는 것도 해 보면 재미있을 것 같구요.
Kfc와 버거킹은 상관관계가 높을 수밖에 없습니다. 지금은 아니지만 몇년 전까지 두산에서 둘다 운영했기때문에 두 프랜차이즈가 나란히 있는 곳도 많았지요.
오오. 그렇군요! 명쾌한 정보 감사드립니다!
영천이랑 경산 위치 바뀐거 같습니다! 영천이 경산 동쪽이예요!
오.. 감사합니다. 다음 버전에서 수정하겠습니다~
과천 시민인데요
과천에 롯데리아가 있긴 있는데
서울랜드 안에 있습니다
그리고 서울랜드를 포함한 대공원 전체는
서울시 관할이고요
그래도 과천으로 통계되나요??
주소 기준으로 하고 있습니다. 경기도 과천시 막계동으로 주소가 올라가 있다 보니까 그렇게 됐습니다. ^.^;
안녕하세요.
정말 정말 정말 재밌게 보고 갑니다~
저기다가 cluster analysis 해보면 재미나겠습니다.
정말 재밌는 소재의 포스트입니다!
공개해 놓으신 IPython 노트북 대로 따라해 보았는데 lonlat.csv와 blockmap-positions.csv가 없어서 이점에서 아쉽게 막혔네요. 혹시 두 .csv 파일도 공유 가능하실까요? ^^
앗. 깜빡하고 올리지 않았네요.
blockmap-positions.csv, lonlat.txt
여기에 올렸습니다~~
너무 잘 봤습니다. 분석하는 과정과 더불어 파이썬 코드까지 있으니 많은 도움이 되네요.
저 그런데 matplotlib으로 그래프를 그리실때 한글처리는 어떻게 하시나요?
저는 한글 처리가 잘 되지 않아 ASCII로 변환해서 매번 처리 했는데 ( T.T )
파이썬 2에서는 신경쓸 것이 좀 있었는데, 3부터는 아주 부드럽게 잘 됩니다~ 글꼴만 설치해 주시면 바로 쓸 수 있어요. 이번 분석에서는 네이버 바른고딕을 썼습니다.
안녕하세요 좋은자료 보고 갑니다.
제가 초보라서 그런데
response = urllib.request.urlopen(‘http://www.burgerking.co.kr/api/store/searchmap/empty/?areacd=’)
같은 url은 어떻게 알아내는건가요? 이 자료보니 저도 다른 소재로 시도해보고 싶어서요.
안녕하세요~
URL은 웹사이트를 띄우고 웹브라우저 내장된 DOM inspector로 form 구조를 살펴보거나, 자바스크립트를 쓰는 경우엔 HTML 소스를 읽어보면 대부분의 경우에 어렵지 않게 얻을 수 있습니다. 다른 방법으로는 Wireshark같은 sniffer 도구를 쓰거나 mitmproxy 같은 프로토콜 분석을 전문적으로 하는 프락시를 쓰셔도 비슷한 방법으로 분석할 수 있습니다.
재밌네요. 조금 더 가공하면, (물론 인구 관련 내용) “어느 곳에 매장 하나 차려야 한다.” 같은 결론을 얻을 수도 있겠네요.
안녕하세요? 올리신 포스팅을 보고 파이썬에 입문하게 된 연구자입니다. 컴퓨터 언어에 대한 막연한 두려움? 같은 것이 있었는데, 덕분에 좋은 언어를 공부하게 되어 감사하다는 인사부터 드리고 싶습니다.
올리신 포스팅을 보고 파이썬으로 이런 것도 할 수 있구나.. 하는 감탄에서 답답함으로 이어진 뒤 기초 강좌들을 듣게 되었네요.
어느 정도 기초 강좌를 듣고 다시 와서 올리신 코드를 이해하려 하니 여전히 어려운 부분들이 존재합니다. 바로 위의 분도 올리신 질문이신데, 버거킹 사이트에 들어가서 Dom inspector로 저 url을 찾으려 노력 중인데 어디에 숨어 있는지 보이질 않네요. 혹시 좀 더 자세히 설명해주실 수 있으시면 큰 도움이 될 것 같습니다.
좋은 포스팅 다시 한 번 감사드립니다.
안녕하세요!! 정말로 분석하신 글 잘 보았습니다. 제가 이번에 버거킹에 대해서 조사를 하고 있는데 혹시 매장수는 어찌 아셨는지 알 수 있을까요??
홈페이지에 있는 매장 목록에서 셌습니다~
재미있네요! 잘봤습니다!
blockmap-position.csv 파일점 받을수 있을까요?
안녕하세요. 분석해주신 글 정말 감명깊게 읽었습니다. 저는 빅데이터 공부를 하고 있는 컴퓨터공학과 학생인데요, 혜식님이 분석해주신 버거지수와 저희가 분석한 시군구별 아파트 실거래지수를 비교해보고 해당 버거지수가 타당성이 있는지에 대해서 조사하는 프로젝트를 진행 중입니다.
본 자료가 2015년판이어서, 새롭게 2017년판으로 재디자인하려고 혜식님이 공개해 주신 IPython notebook을 따라 분석해 보았는데요, 각 매장수의 분석은 끝마쳤으나 행정구역을 나타낸 csv파일과 블럭 지도 데이터 csv파일을 구하지 못하여 진행에 난항을 겪고 있습니다..T_T
혹시 아직도 해당 파일을 가지고 계신다면, 2017년판의 구현을 위해 공유받을 수 있을까요? 위에 드랍박스에 올려주신 링크가 있으나, 기간이 오래되어 만료된 듯 싶네요..
공유해 주신다면 이용하는데 큰 도움이 될 것 같습니다. 감사합니다!