クリスマスに向けデータに関する想いや技術をぶっちゃける Advent Calendar 2022の12/10分として書かせていただきます。
はじめに
はじめまして!
おかべと申します。人間です。大学院生です。
不均衡データ分析や判別に関して興味を持っています。
最近はtorchと戯れています。
記事の背景
某ウイルスが流行り始めたあたりで、心身ともに体調を崩しがちになってしまったこともあったり、睡眠をトラッキングできたら面白いなと思って、2021/9/21からfitbitで自身の睡眠トラッキングを始めました。
つけてるだけで勝手に睡眠のデータをとってくれるので楽しいです。
ちょっと前に何がわかるんだろうと思ってプレミアム会員に登録しました。
それと同じくらいのタイミングでお家をスマートにし始めました。
朝カーテンが自動で開いたり、家に帰ったら勝手に電気がついたり、太陽が昇るタイミングでエアコンが勝手についたり...
データを溜める
iPhoneのヘルスケアアプリがとても優秀です。
動いた歩数もAppleWatchで記録された心拍も、体重計で測った体重も全部記録されています。
基本的にはAppleWatchで活動量だったり心拍と睡眠、iPhoneで歩数とかを記録していますが、この辺は特に何も考えなくても勝手に溜まっていってくれるので嬉しいです。
自ら行動して記録/手元に持ってくる必要があるのは体重のデータや部屋の温度のデータかなと思って、それらは次の方法によって溜めています。
あと、fitbitもAPI使ってとってこないといけないですね。
体重を記録しよう
体重は昔買った1byoneの体重計を使っています。
BluetoothでiPhoneに記録できるので便利です。
部屋の温度を記録しよう
室温の記録はNatureRemoとswitchbotの温度計を使っています。
Natureremoは10分おきにAPIを叩いて温度を取得しています。
特に意味はないですが、cronではなくPythonのscheduleを使いました。
そして、とってきた温度はSQLite3のデータベースに入れています。
コードはここにあります。
fitbitのデータを持ってくる
fitbitのデータはAPIを使って落としてきて、1日分ずつpickleで保存しています。
コードはここにあります。
(間に合わせで公開した感MAXですが...)
睡眠時の心拍
良い睡眠(未定義)を達成するために、まずは睡眠時の心拍数に着目してみました。
バカ食いをして寝てみた
深夜に奈良にあるとあるラーメン屋に行った後に寝た日、次の日の寝起きは全く寝たきがせずに最悪な気持ちです。
fitbitで計測された心拍数は次の図の通りでした。
これは寝た気がしませんね。
消化のために身体が頑張りっぱなしでした。
冬に布団から出るために
今年はなんかバタバタしていて、衣替えのタイミングがよくわからなかったという問題がありました。
まだ布団のシーツを冬仕様にできていません。
そしたらなんか体調がよくない期がやって、布団から出られなくなってしまいました。
解決策として、起床時の室温を上げたいのですが、夜からずっとエアコンつけっぱなしはよくないと思ったので、太陽が上がるあたりのタイミングでエアコンがつくように設定しています。
その設定にiPhoneのショートカットアプリが便利でした。
デフォルトのトリガーとして日の出が使えるのはとても良いです。
参考までにこんな感じに設定しています。
(夏もどうにかしたいけど、夏はちょっと冷えたらいいから冬をどうにかする必要があるんだろうなあと思っています。)
今後の課題としては、気持ちとしての睡眠の気持ちよさを何かしらの方法で記録できないかな...ってところです。
今後の課題とおわりに
データをどう溜めたらいいんかなっていうのがいまいちよくわかっておらず、なんとなくでやっているという状況です。
とはいえ、n=1だから困ってはいないのかな...という状況でもあります。
そして、コードも雰囲気で書いたので、ちゃんと整備されているものではないので、いずれは綺麗にしたいなという気持ちです。
このポエムの内容は少し前に自分の中で楽しいなと思っていてデータを溜めていく環境を作ったところなんですが、そっから放置されているので、自身の良い生活のためにこっから何かしていきたいとは思っています。
感覚的に、ダイエットを経て睡眠時の心拍数が下がったな...って気持ちなんですが、データからちゃんと調べておきたいなあというのが今後の課題です。
室温と睡眠時心拍とかは見てみたんですが、いまいちコレという結果も得られず...ちまちま睡眠改善をしていきたいと思っています、
@booklin_sc、声をかけていただきましてありがとうございました。