LoginSignup
2
0

More than 5 years have passed since last update.

顧客ロイヤルティの"位置"を感じられるという体験をさせたい

Last updated at Posted at 2017-11-23

徒然

・"顧客ロイヤルティ"を位置で感じる、という体験、感覚
・店長とか、エリアマネージャーとかはジオグラフィック情報に対する感受性が高い
・where。うちの店はどこのだれ?
・where × NPS、をシステムで語りたい
・つまり、Location × Emotion
・現場より階級クラスのユーザーのアクセス頻度を高めたい
・というか、毎日何かしら触る習慣をつけたい

つまり

・回答データ、またはシステムにインポートした郵便番号データ

・緯度と経度に変換

・プロット

・自社、自店のお客さんの"Location x Emotion"がミエル

※もっと、個々の推奨度毎で色がかわっていたり、 →できた
※エリア平均として色が変わったりさせたい 

参考

①データ読み込み

#適当にデータを生成したものを加工して使ってみる
#https://hogehoge.tk/personal/
> test <- read.csv("personal_infomation.csv",header = TRUE)
> head(test)

  連番 score カテゴリ カテゴリ.score 郵便番号     経度     緯度  sex  age
1    1     0   批判者      批判者:0 574-0025 135.6305 34.70593 女性 31歳
2    2     7   中立者      中立者:7 581-0011 135.6106 34.62701 女性 37歳
3    3     7   中立者      中立者:7 675-0032 134.8242 34.75972 男性 33歳
4    4     0   批判者      批判者:0 669-3167 134.9594 35.11034 男性 38歳
5    5     3   批判者      批判者:3 647-0001 135.9787 33.73390 男性 41歳
6    6     4   批判者      批判者:4 527-0016 136.1907 35.10003 女性 27歳

②データ内の郵便番号を緯度、経度に変換

  #↓を使えばできると思うが、いまはよくわからんから、ローカルでやった
  #https://www.tree-maps.com/zip-code-to-coordinate/  
  #https://www.geocoding.jp/

③ライブラリをインストール

install.packages("leaflet")
library(leaflet)

④これでプロット用データに変換(されるらしい)

knitr::kable(test)

こんなのが出てくる

| 連番| score|カテゴリ |カテゴリ.score |郵便番号 | 経度| 緯度|sex |age |
|----:|-----:|:--------|:--------------|:--------|--------:|--------:|:----|:----|
| 1| 0|批判者 |批判者:0 |574-0025 | 135.6305| 34.70593|女性 |31歳 |
| 2| 7|中立者 |中立者:7 |581-0011 | 135.6106| 34.62701|女性 |37歳 |
| 3| 7|中立者 |中立者:7 |675-0032 | 134.8242| 34.75972|男性 |33歳 |
| 4| 0|批判者 |批判者:0 |669-3167 | 134.9594| 35.11034|男性 |38歳 |
| 5| 3|批判者 |批判者:3 |647-0001 | 135.9787| 33.73390|男性 |41歳 |

⑤まっさらの地図を用意する

  map <- leaflet(test) %>% 
    addTiles()

⑥プロットデータの緯度経度を指定して、マップにプロット

  #カラーパレットの配色と何に充てるかを指定
  palfac <- colorFactor(palette=c("green","yellow","red"), domain=test$カテゴリ)

  #マップにプロット
  map %>% 
 addCircles(lng=~経度,
            lat=~緯度,
            radius=200, #円の半径
            color=~palfac(カテゴリ),
            weight=5, #円の太さ
            label=paste(test$カテゴリ.score,test$sex,test$age,sep = ","), #labelで、マウスをあわせたら出てくる値を定義できる
            ) %>%
# 凡例を出す
  addLegend(position='topright', pal=palfac, values=~カテゴリ)            )

こんな感じになる
image.png

image.png

image.png

↑こんな感じ
http://rpubs.com/Motoki0214/333331
http://rpubs.com/Motoki0214/333332

⑦別のパターンでやってみる。まず、まっさらの地図を用意

map <- leaflet(test) %>% 
  addTiles()

⑧addMarkersのパターン場合。クラスター化できるオプションがある。また、ミニマップもつけられる

map %>% 
  addMarkers(lng=~経度,
             lat=~緯度,
             #  radius=200, #円の半径
             #    color="#00F",
             #   weight=5, #円の太さ
             label=paste(test$カテゴリ.score,test$sex,test$age,sep = ","), #labelで、マウスをあわせたら出てくる値を定義できる
             clusterOptions = markerClusterOptions() ,
  )%>%
addMiniMap(position="bottomright")

こんな感じになる

image.png

image.png

image.png

image.png

↑マウトを併せると、情報がポップアップ
http://rpubs.com/Motoki0214/333330

いま、IPアドレスが取られてるので、すぐにでもいけそうじゃね???

2
0
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0