100日後にプロになるワシ14日目(python)
昨日はECサイトの顧客の購入データから顧客が好みそうな商品を予想するモデルを作成した。
今日からは新しく引っ越し需要予測というのをやる
今までは、穴埋め問題という「学習」スタイルで進めていたけど、今日からはガチコンペの課題です。(解答ないやーつ)
やったこと
アップル引っ越しセンター、機械学習コンペティション
環境構築とデータ確認まで。
概要
引っ越しの需要は3月が年間平均の2.5倍、4月が2倍らしく。
引っ越し会社はこの繁忙期で年間の売り上げのほとんどを稼いで、それ以外をなんとかしのいで年間収支を立てているそう。
また、引っ越しスタッフは「シフト制」で、需要予測ができないために、なかなか休めない。緊急出勤などがおきます。
なので、もし、需要予測ができたのなら、その予測に応じて人員を配置することができます。生産性を高められ、収益性が増します。
そして、スタッフが働きやすい環境が作れることで、人材の定着にも貢献します。
とのこと
jupyter notebookをやる
jupyter notebookはpython界隈ではぶち有名な開発環境
結構前にE資格勉強の時インストールして以来の起動
UIはこんな感じ↓
これ1つ1つを分けて実行できたり、その順番を変えたりできて色々便利!
起動するだけでローカルサーバー立ち上がってブラウザで動作します!
今日は前回までにやったECのプログラムを眺めながら進めました。
最初のモジュールインポートでこける図↑(たいぽ)
カラム ヘッダ名称 説明 変数種別
0 datetime 日時(YYYY-MM-DD) 文字列
1 y 引越し数 数値:整数
2 client 法人が絡む特殊な引越し日フラグ 数値:整数(0,1)
3 close 休業日 数値:整数(0,1)
4 price_am 午前の料金区分(-1は欠損を表す。5が最も料金が高い) 数値:整数(-1,0,1,2,3,4,5)
5 price_pm 午後の料金区分(-1は欠損を表す。5が最も料金が高い) 数値:整数(-1,0,1,2,3,4,5)
扱うデータはこんな感じ↑
今回は今まで扱ってきたtsv形式ではなくcsv形式だったのでそこでまずハマった。
tsv形式はタブで区切ってあるんだけど、csvはカンマ区切り。。。。
これで何が困るって、データを扱うのにdataflameというデータを扱いやすい形に変換するんだけど。
tsvタイプではdata["引っ越し数"]とかで行を選択していたのに、csvタイプではキーワードで呼び出せなかった!!!
で、30分くらいハマって色々やったら
なんか治った
なんか治ったから進めていって
こんな感じでデータの分布とか出してみた。
これでわかるのは法人が絡む特殊な引っ越しは206回とか
休業日は27日しかないとか
高額な料金区分はやっぱり少ないな。とか
感想
やっぱり穴埋め問題より、自分でやってる感があってよい
明日からちゃんとした分析に入ります。
いい感じに勧められてて嬉しい
おまけ
どうやら簡単にグラフがかけるらしかったので、やってみた
↓こちらは午前の料金区分(-1は欠損。5が最も料金が高い)
圧倒的「分析してる感」