当サイトのリンクには一部プロモーションを含みますが、一切その影響は受けず、公正・中立な立場で制作しております。
iPhoneで体重管理してるけど、いまいちヘルスケアのグラフが使いにくい…。
この腰痛体操のおかげでもう3ヶ月以上も腰痛再発なし!
おかげで継続的に走れるようになり、ご覧の通り体重がどんどん落ちてます!ピークで85.1kgあったんですが、先日80kgをきりました!いやぁ、うれしいっ!
やっぱり食事制限だけじゃ体重は落ちないということがよーくわかりました。
僕はiPhoneで体重管理(毎日体重測って入力してます)してまして、このグラフを眺めることがモチベーションアップのひとつとしてとても役立ってます。
ただ、このグラフが正直使いにくい。日・週・月・年の切り替えは早くていいんですが、グラフのピークとボトムの数値をすぐ確認できないんです。詳しく知るには「すべての記録データ」を見返さないといけないんですよね。
これじゃちょっと使いづらいので、ここ最近は定期的にMac(Windowsでももちろん可)にデータを移してパソコン上で管理するようにしてます。具体的にどうやるかというと…。
まずはiPhoneからヘルスケアのデータを書き出す
まず最初に、iPhoneからヘルスケアのデータを書き出します。
ヘルスケアアプリの右上にある人のアイコンをタップして、アカウント情報を表示します。続いて「ヘルスケアデータを書き出す」をタップ。
「データを書き出してもよろしいですか?少し時間がかかることがあります。」と表示されるので、ちょっと気にはなりますが、そのまま「書き出す」をタップ。しばらく時間が経った後…
保存先または送付するツール表示されます。お好きな方法を選択してください。
今回は「iCloud Driveに追加」を選択してみました。iCloud Driveの中の追加先をタップして選択します。
MacでiCloud Driveを見てみると、先ほど書き出した「書き出したデータ.zip」という圧縮ファイルが保存されてます。これを解凍すると「apple_health_export」というフォルダが出てきました。
フォルダ内にある「書き出したデータ.xml」の中に、iPhoneのヘルスケアアプリに保存されている様々なデータが保存されてます。体重、心拍数、歩数、ウォーキング・ランニングの距離、上った階数、アクティビティの情報などなど。驚いたのがその容量。なんと537.2MBもあります。(export_cda.xmlの中にもデータは入ってますが、xmlの記述方法が異なってます。今回は体重の情報がまとまってて利用しやすかった「書き出したデータ.xml」を使用。)
XMLファイルから利用したい情報を探してCSVに変換
これをテキストエディタなどで開いて利用したい情報を探します。
ただ、ファイルサイズが500MB越えしてるもんだから、動作が重い重い。うちの環境では、Xcodeで開くのが一番速かったです。CotEditorだとスクロールするのもほとんどできないぐらい重かった。
今回は、体重データを探してたので「83.2」とか過去にiPhoneに入力した体重を検索して見つけました。その情報がこれ。
Recordタグで囲まれた中に、valueで体重が記載されてます。具体的には以下の部分です。
<MetadataEntry key=”HKWasUserEntered” value=”1″/>
</Record>
この体重が書かれている部分をごっそりコピーします。
このXMLをCSVに変換してExcelで編集できるようにします。うちのExcel Mac 2011ではXMLのインポートができなかったので、今回はこちらのサイトを利用させてもらいました。
XMLの部分にペーストして「Convert」をクリックすると、XMLのRecordタグのみを対象とし、属性が”type”,”startDate”,”value”,”unit”の値のみ抽出されます。
CSVの部分に、カンマ区切りのCSV形式で変換が完了。あとはこれをコピーして、テキストエディタなどで「体重.csv」など名前をつけて保存。これをExcelで開きます。
CSVを整形してグラフ化
Excelで開くと、日付や体重がこんな感じで表示されます。
一番左から”type”,”startDate”,”value”です。typeは体重だけなので列ごと削除。単位のkgもいらないので削除。日付は時間は不要なので、セルの書式設定で変更します。
「yyyy/m/d h:mm」を「yyyy/m/d」に変更します。
あとは、好きなように整形してグラフ化すれば完了です。
ピークの体重と現在の体重が一発でわかるようになりました。
iPhoneで大まかな情報を掴みつつ、Macで詳細情報を目で確認。時系列で表示されてるので、腰痛が再発した時期などいろんな情報を紐づければ、さらにデータを有効活用できます。この情報は使える!
今回はMacでやってみましたが、Windowsでももちろん可能です。ヘルスケアで書き出された情報はXML形式なので、あとはそれをCSVなど自分が好きな形式に変換するだけです。
不満があるとすれば、書き出したファイルのサイズがでかすぎること。すべてじゃなく、項目ごとに書き出せるようになるともっと使いやすいんだけどなぁ。