レンタサイクルの顧客数とHomePage記載の価格表から、このビジネスの売り上げ他もろもろのインサイトを得られるか探索的にデータ分析してみる。
分析の結果、 Registered Memberより、Casual Memeberのほうが売り上げへの貢献度が大きいことが分かった。
データの列のRegistered、Casualの値はその時間に新しく利用”し始めた”人数ではなく、利用している人数だと思う(例えば、23時に10カウントあるのは、23時から利用し始めたのではなく、23時に利用している人数を示していると考察)。
そうなると、以下の分析では、ユーザー数を過剰に見積もり過ぎている。このミス(?)を共有するために、パプリッシュする。
2019年9月のEDAsalonのテーマは
EDA Salon 第3回 - 自転車のレンタルデータ https://exploratory.io/note/GMq1Qom5tS/EDA-Salon-3-EHV0Avq4Or
元データはcapital bikeshare
というワシントンDCでレンタサイクルビジネスを展開している会社のものようだ。Homepageを見てみると、以下のようにユーザータイプ・サービスごとの価格が分かる。Registeredは会員登録して常時使いにユーザー、Casualは不定期に利用するユーザーであると推測する。
user_type | price | service |
---|---|---|
Registered | $8 / month or $85 / year | Annual Membership |
Casual | $2 | Single Trip, One ride up to 30min |
Casual | $8 | 24-Hour Pass |
RegisteredとCasualをユーザータイプ(user_type)として2分類して、2011年1月から2012年12月までの月単位での利用数推移を見てみる。
データ処理として、RegisteredとCasualの列をワイドからロング型に変換して、これらの2値(Factor)を(user_count)として持つuser_type列を作成した。
Registeredの数が多く、増加傾向がより強く見えている。一方でCasualの数も増加傾向が確認できるが利用者数はRegisteredに比べると明らかに少ない。Y軸スケールを揃えているため、Casualの増加が緩やかに見えるがここは細かく分析しないと断定できない。
これらの仮定を付加して、先ほどのバーチャートを売り上げのチャートにしたものが、下図。
凄い。実はCasualのほうが、売り上げに貢献しているのだ。価格を改めて見ると、 以下のことが分かる。
* $8/month @ Regsitered = $8/holiday @ Casual
* $8/month @ Regsitered =$2/workingDay @ Casual * 4day
では、capital bikeshareはCasualのユーザー数を増やす戦略を取ればいいのか?
考えてみる。
面白いインサイトだった(自己満足)
RegisteredとCasualの利用者のトレンドを時系列予測を使って、分析してみる。
週・曜日単位での分析
ifelseよりif_elseのほうがいいらしい。結局casewhen使ったけど。