💮「ヘルスケア」からデータをとってきてRで自己健康診断する
「ヘルシープログラマ」を読んだせいか、年のせいか、健康に気を遣うおう、という気持ちになってきた。たとえ生活リズムがボロクソになっていても、気持ちの面では健康に気を遣いっていたい。
先日、長らく使っていたiPhone 4Sを機種変更してiPhone 6Sにした。そのため、ヘルスケアアプリの歩数計の機能が使えるようになった。これが結構楽しくて毎日確認している。確認していると、当然のごとくRで解析したくなってくる。こうした気持ちは全人類共通のものであるにもかかわらず、データをダウンロードしたり、転送したりという昨日はない。Shucks!
というわけでヘルスケアのデータをダウンロードしてくれるアプリを探したらすぐに見つかった。
http://www.fat32.io/blog/2015/1/21/exporting-data-out-of-healthkitwww.fat32.io
時間か日ごとかの集計を選び、必要な項目を選択すると、テーブルを作成してくれるので、Macに転送するなりする。あとは煮るなり焼くなり。
せっかくなので試しに歩数のデータを表示してみた。描画にはユタニキこと、id:yutannihilation さん作成の{chartist}
を使わせていただいた。super cool!
コード↓
library(readr) library(dplyr) library(chartist) read_delim(file = "/Users/uri/Downloads/Health Data.csv", delim = ",", col_types = cols( Start = col_datetime(format = "%d-%b-%Y %H:%M"), Finish = col_datetime(format = "%d-%b-%Y %H:%M") )) -> df_health df_health %<>% dplyr::filter(Start > "2015-09-25") %>% dplyr::mutate(day = paste0("day", row_number())) %>% dplyr::mutate(Steps = as.numeric(`Steps (count)`)) %>% droplevels()
chartist(df_health, day, Steps) + SVG_animate(target = "line", style = "opacity", offset = 0, delay = 200, dur = 4000)
こういう記事を書くきっかけを与えてくれた @dichika さんに感謝。@dichika さんのブログには、以下のものを始め、楽しい記事や参考になる記事がたくさんある。
Enjoy!