この記事は、Crieitのアドベントカレンダー Advent Calendar 2018 22日目の記事になります。
私にとってこの一年はフリーランスを始めた年であり、
「年で合計400㌔走る!」という目標を掲げた年でもありました。
結果としては21日時点で402㌔。無事達成できました!
せっかくなのでデータを見つつ、今年を振り返ってみます。
妻に脇腹をつねられ「あれ?なんか付いてる。。!」という発言から。
とりあえず目標を建てないと続かないと思い、
週の半分で2キロ走ることができたら、400㌔いけるなという概算で設定。
runtasticというスマホのアプリを利用していました。
GPSを有効にしてアプリを起動して走ると、時間や走行距離を計測してくれます。
1キロ毎に走行時間をアナウンスをしてくれるのでペースを維持するのに良かったです。
アプリのサイトに行くと、データがエクスポートできるのでそこからダウンロードしました。
経緯度だけマスキングしてこちらにあります。良かったら利用してみてください。
https://github.com/u110/my_runtastic_data
※ 目標達成する前にダウンロードしたデータなので、400㌔届いておらず。
この後コード片を載せますが、分析に用いたコードもリポジトリにあります。
1回のランニングあたりの
- 経緯度
- 開始時刻
- 走行距離
があったので今回はそれのみ。
他にも毎分あたりの経緯度やペースなども見れるようです。
コードの一部
dat = preprocess(df) # 前処理を行ったDataFrameを返す関数を用意
dat.head()
まずは1変数のヒストグラムを見ましょう。
データのプロットはpythonで書いています(全コードはgithubリポジトリにあります)
# 走行距離分布(単位:メートル)
# 3, 4キロあたりが多い。
dat.distance.hist()
# ランニング開始時間 基本的に6-7時台
dat.shour.hist()
日本語だと蜂群図(bee swarm plot)というらしいです。
データの個数やばらつぎ具合が把握できるので便利です。
(データ増えると描画に時間かかるので注意)
# 1回あたりの走行距離の分布
sns.swarmplot(x="smonth", y="distance", data=dat)
時系列でみると、1回に走る距離が伸びている
4, 7, 11, 12月で走る回数が減っている
5月、9月で持ち返している
他の情報についてはまだ見れていないので
時間見つけて触ってみたいです。pull requestくれても良いですよ!?
簡単ですが、以上になります。お読みいただきありがとうございました!
次のエントリをお楽しみに!!
https://github.com/u110/my_runtastic_data/blob/master/Makefile
経緯度の情報をマスキングする処理だけ書きましたが、
物足りなかったのでデータ分析にしましたw
Crieitは誰でも投稿できるサービスです。 是非記事の投稿をお願いします。どんな軽い内容でも投稿できます。
また、「こんな記事が読みたいけど見つからない!」という方は是非記事投稿リクエストボードへ!
こじんまりと作業ログやメモ、進捗を書き残しておきたい方はボード機能をご利用ください。
ボードとは?
コメント