iphone のヘルスケアデータをExcelのPower Queryで整理・加工する方法

Microsoft
この記事は約17分で読めます。

ーーーーーーーーーーーーーーーーーーーーー2026年3月27日執筆ーーーーーーーーーーーーーーーーー

iphone のヘルスケアデータをExcelのPower Queryで整理・加工する方法のPodcast

下記のPodcastは、Geminiで作成しました。

はじめに

自身の健康状態を客観的な数値で把握し、日々の生活習慣を改善する「セルフトラッキング」の重要性が高まっています。iPhoneの「ヘルスケア」アプリは、歩数や心拍数、睡眠分析だけでなく、iOS 17や18で導入された「心の状態」の記録や、Apple Watchと連携した精緻なバイタルデータなど、膨大な健康情報を蓄積するハブとなっています。

しかし、アプリ上のダッシュボードで確認できるのはあくまで集計された一部のトレンドに過ぎません。自身のデータを自由な角度から分析し、長期的な相関関係を見出すためには、データを外部へ取り出し、Excelの「Power Query(パワークエリ)」を活用して整理・加工する必要があります。

iPhoneからエクスポートされるヘルスケアデータは、XML(Extensible Markup Language)という形式で保存されています。このファイルは非常に構造が複雑で、数年分のデータがある場合にはファイルサイズが数百メガバイトから数ギガバイトに達し、通常のExcel操作で開こうとするとフリーズやクラッシュの原因となります。

そこで、本記事では初心者の方でも迷わず、大容量のXMLデータを効率的に処理し、Excel上で自在に分析できる形に整える最新の手順を詳しく解説します。

第1章:データの書き出しとPCへの転送

分析の最初のステップは、iPhone内に保存されている生データを外部へ取り出すことです。iOS 18においても基本的な操作は「概要」タブから行います。

1.1 iPhoneでのエクスポート操作

まず、iPhoneの「ヘルスケア」アプリを起動し、画面下部の「概要」を選択します。次に、画面右上の「プロフィールアイコン(自分の写真やイニシャル)」をタップしてください。表示されたメニューを一番下までスクロールすると「すべてのヘルスケアデータを書き出す」という項目があります。これをタップして「書き出す」を選択すると、データの準備が始まります。

注意点:

データ量が多い場合、書き出しの準備(アーカイブ化)に数分から10分以上かかることがあります。この際、iPhoneのストレージに5GB程度の空き容量がないと、エクスポートが失敗したり、中身が空の0KBファイルが作成されたりすることがありますので、事前に容量を確保しておきましょう。

1.2 ファイルの転送と解凍

準備が整うと共有メニューが表示されます。Windows PCで作業する場合は、iCloud Driveへの保存やGoogle ドライブなどのクラウド経由、あるいはAirDrop(Macの場合)を使用して転送します。PCに保存された「export.zip」というファイルを右クリックして解凍すると、「apple_health_export」というフォルダの中に「export.xml」が含まれています。これがすべてのデータの源泉となります。

第2章:Power Queryへの取り込みとナビゲーション

「export.xml」をダブルクリックして開いてはいけません。Excelの「Power Query」機能を使用して、必要なデータだけを抽出していきます。

2.1 インポートの開始

新規Excelブックを開き、「データ」タブを選択します。「データの取得」→「ファイルから」→「XMLから」の順にクリックしてください。ファイル選択画面で先ほどの「export.xml」を指定し、「インポート」をクリックします。

2.2 「Record」テーブルの選択

インポートが完了すると「ナビゲーター」ウィンドウが開きます。ヘルスケアデータにはワークアウトやアクティビティの概要など多くの項目が含まれていますが、歩数や体重、心拍数などのバイタルデータはすべて「Record」という名前のノードに格納されています。リストから「Record」を選択し、右下の「データの変換」をクリックしてください。これにより、Power Queryエディターが起動します。

第3章:属性の展開とデータのクレンジング

Power Queryエディターに表示された初期状態のデータは、まだ「箱(Record)」の中にさらに詳細が隠されている状態です。

3.1 属性(Attribute)の展開

テーブルの右の方にある「Attribute」という列を探してください。列見出しの右端にある「二つの矢印が外側を向いているアイコン(展開アイコン)」をクリックします。

展開するフィールドとして、以下の項目にチェックを入れます:

type: データの種類

unit: 単位

creationDate: 記録作成日

startDate: 測定開始日時

endDate: 測定終了日時

value: 数値データ

「元の列名をプレフィックスとして使用します」のチェックは外しておくと、列名がすっきりして扱いやすくなります。

3.2 識別子(プレフィックス)の削除

「type」列を見ると、「HKQuantityTypeIdentifierStepCount」のように、Apple内部の長い識別子が付いています。これを「StepCount(歩数)」などの読みやすい名前に置換します。

「type」列を選択し、「変換」タブの「値の置換」をクリックします。「検索する値」に KQuantityTypeIdentifier と入力し、「置換後の値」は空欄のままOKを押します。同様に、睡眠などのカテゴリデータに含まれる HKCategoryTypeIdentifier も削除しておくと、視認性が大幅に向上します 。

第4章:日付と時刻の適切な変換

ヘルスケアデータの日付は、2026-03-27 15:30:45 +0900 というISO 8601形式で記録されています。Excelで計算に利用するためには、データ型の変更が必要です 。

4.1 日付/時刻/タイムゾーンへの変換

startDate 列のヘッダーにある型アイコンをクリックし、「日付/時刻/タイムゾーン」を選択します。そのままでも扱えますが、タイムゾーン情報を省いて単純な日付にしたい場合は、その後に再度アイコンをクリックして「日付/時刻」に変更します。

4.2 日付と時刻の分離

分析の幅を広げるため、日付(年月日)と時刻(何時何分)を別の列に分けるのがおすすめです。「列の追加」タブから「日付」→「日付のみ」を、続いて「時刻」→「時刻のみ」を選択します。これにより、「月曜日の午前中に歩数が多い」といった時間帯・曜日別の分析が可能になります 。

第5章:数値データ(Value)の最適化

「value」列はデフォルトではテキスト形式として取り込まれているため、足し算や平均の計算ができません 。

5.1 データ型の変更

「value」列を選択し、型を「10進数」または「整数」に変更します。

トラブル対策: 変換時にエラーが出る場合は、データの区切り文字(カンマやピリオド)の地域設定が原因の可能性があります。その場合は「ロケールを使用して型を変更」を選択し、英語(米国)などの適切な設定で数値に変換します。

第6章:大容量データを扱うためのパフォーマンス向上策

iPhoneを数年使っている場合、データ行数は数百万行に及びます。PCの動作を重くしないためのプロのテクニックを紹介します 。

6.1 64ビット版Excelの利用

まずは、ご自身のExcelが「64ビット版」であることを確認してください。32ビット版には2GBのメモリ制限があり、大容量のXMLを処理するとほぼ確実にクラッシュします 。

確認方法: 「ファイル」→「アカウント」→「Excelのバージョン情報」から確認できます。

6.2 読み込み設定の最適化

Power Queryのオプションから「背景データのプレビューをダウンロードすることを許可する」のチェックを外すと、エディターの動作が劇的に軽くなります 。

6.3 早期のフィルタリング

すべてのデータをExcelに読み込むのは賢明ではありません。「type」列のフィルターを使用して、まずは自分が分析したい項目(例:StepCount や HeartRate)だけに絞り込んでから処理を進めてください 。

第7章:高度な分析への応用

データが整ったら、次は価値あるインサイト(洞察)を導き出す段階です。

7.1 列のピボット(横持ち変換)

現状のテーブルは縦に長い「縦持ち」データです。これを「日付」を1行とし、列ごとに「歩数」「体重」「心拍数」が並ぶ「横持ち」データに変換すると、各指標の相関(例:運動量が多い日は心拍数が落ち着いているか)が見えやすくなります 。

7.2 重複データの整理

Apple WatchとiPhoneの両方を身につけている場合、歩数が重複してカウントされている場合があります 。sourceName 列で記録元のデバイスを確認し、必要に応じてApple Watchのデータのみを抽出するなどの処理を行うことで、より正確な数値を算出できます。

結論

iPhoneのヘルスケアデータをExcel Power Queryで加工するプロセスは、単なる作業ではなく、自分自身の体を「見える化」するための知的活動です 。XMLという複雑な形式も、一度Power Queryで「整形レシピ」を作ってしまえば、次からは「すべて更新」ボタンを押すだけで最新の分析結果が得られるようになります 。

最新のiOS 17/18で追加されたメンタルヘルスの記録や睡眠ステージの詳細データも、今回紹介した手順で同様に分析が可能です 。データの海に溺れることなく、Power Queryという強力な羅針盤を使いこなし、健康で充実したライフスタイルの実現に役立ててください。

参考資料

  1. iPhoneヘルスケアのデータをExcelでみる, https://note.com/shinoote/n/n36f0c97e9b38
  2. Power Query XML connector, https://learn.microsoft.com/ja-jp/power-query/connectors/xml
  3. iPhoneでヘルスケアデータを共有する, https://support.apple.com/ja-jp/guide/iphone/iph5ede58c3d/ios
  4. iPhoneのヘルスケアデータの概要, https://support.apple.com/ja-jp/guide/iphone/iphbb8259c61/26/ios/26
  5. ISO 8601 parsing in Excel and Calc, http://blog.hani-ibrahim.de/iso-8601-parsing-in-excel-and-calc.html
  6. iPhoneのヘルスケアデータをエクスポートして2023年の散歩距離を集計する, https://hideack.site/entry/2024/01/03/135422
  7. Apple Health Data Types Identifiers, https://developer.apple.com/documentation/healthkit/data_types
  8. From Apple Watch Data to Power BI: Building my personal health dashboard, https://medium.com/@yjayavarapu/from-apple-watch-data-to-power-bi-building-my-personal-health-dashboard-7ee06b4e8d8c
  9. Apple Health MCP Server by Momentum, https://www.themomentum.ai/blog/apple-health-mcp-server-by-momentum
  10. Export Apple Health Data and Analyze It Privately on Mac, https://applehealthdata.com/
  11. Troubleshooting Power Query issues with large files, https://www.integrate.io/jp/blog/troubleshooting-power-query-issues-with-large-files-ja/
  12. How to convert Apple Health XML to CSV, https://www.bitrecover.com/blog/how-to-convert-apple-health-xml-to-csv/
  13. Power Queryでの日付の抽出と変換, https://power-query.net/extract-datetime/
  14. Power Queryでの文字列の置換手順, https://dono-log.com/powerquery-replacement-string/
  15. 複数文字列の置換(リスト形式)の手順, https://dono-log.com/powerquery-replacement-list/
  16. Officeのバージョンとbit数の確認方法, https://support.waseda.jp/it/s/article/000007597
  17. Excelのビット数(32bit/64bit)の確認手順, https://excelcamp.jp/media/operation/other/32589

ーーーーーーーーーーーーーーーーーーーーー2021年8月25日執筆ーーーーーーーーーーーーーーーーー

はじめに

 iphoneのヘルスケアデータにより健康管理を実施していますが、このデータは大きく一括で処理することは大変難しい面がありますが、ExcelのPower Queryを利用することにより、ヘルスケアデータの全体のデータを整理・加工ができたのでその方法について紹介します。

 この記事を読むと、次の疑問について知ることができます。

  • phoneからヘススケアデータの出力はどうするの?
  • Excelにヘルスケアデータを読み込むにはどうするの?
  • ヘルスケアデータをPower Qureyエディターで整理・加工するにはどうするの?
    • 不要な列の削除
    • エラー値の行の削除
    • 日付の分割
    • 不要な文字の削除
    • 測定値ごとにグループ化
  • 歩いた歩数表の整理・加工はどうするの?
    • 日付ごとの歩数の計算
  • Excelでヘルスケアデータの歩数、体重、BMIなどのブラフ化

 OS、機種などで説明の仕方が変わってくることがありますので、私の使用しているパソコン環境について載せておきます。

パソコンOS : Windows10 Pro
Windowsバージョン : 21H1
Excel バージョン : 2107

phoneからヘススケアデータの出力

 先ず、iphoneのヘルスケアデータをパソコンに移す必要があります。

 そのためには、ヘルスケアデータをiphoneのヘルスケアアプリからダウンロードをします。

 iphoneのヘルスケアアプリを起動し、概要画面で右上のあなたのアイコンをタップし、表示される画面で「すべてヘルスケアデータを書き出す」をタップします。

 

 「ヘルスケアデータの書き出す」画面が表示だれますので、「書き出す」をタップし、どこに書き出すかを聞いてくるので、ここでは「Google ドライブ」をタップし、アップロード画面が表示されますので「アップロード」をタップします。

 これで、Google ドライブにヘルスケアデータがダウンロード(書き出したデータ.zip)されます。

 このデータを解凍すると、「apple_health_export」というフォルダー内に2つのファイルがあり、この中の「export.xml」を利用します。

Excelにヘルスケアデータを読み込み

 Excelを起動し、「空白のブック」を選んでクリックすると、「Book1 - Excel」が立ち上がります。

 上部リボンのメニューにある「データ」⇒「データの取得」⇒「ファイルから」⇒「XMLから」を順にくりっくします。

 先ほどヘルスケアデータをダウンロードした「export.xml」を選んで、「インポート」をクリックします。

 「export.xml」の画面が表示されますので、右下の「データ変換」をクリックします。

 「export.xml」が読み込まれて、Power Queryエディターが立ち上がり、ExpoertData(表)、Me(表)、Record(表)、Corelation(表)、Attribute:local(文字列)があり、それぞれの「Table」をクリックすると下にプレビューで、データ内容を確認できます。

 内奥を確認すると、必要なものは「Record」のみであることがわかりますので、他の列を削除します。

 「ホーム」⇒「列の削除」⇒「他の列の削除」をクリックすると、「Record」列のみをが残りますので、その列の「Table」を右クリックして表示されるメニューで「ドリルダウン」をクリックすると、データが展開されます。

ヘルスケアデータをPower Qureyエディターで整理・加工

 読み込んだヘルケアデータはいらない列があり、また色々なデータが全て上から順に入っていますので、これらを整理、加工をしていきます。

 因みに、この表のの行数を見てみると98,203行ありました。

不要な列の削除

 先ず不要な列の削除をします。

 「Attribute:sourceVersion」には、「Error」の入ったセルもあり、必要ないので削除します。

 また、「Attribute:sourceName」、「MetadataEntry」、「Attribute:device」も必要ないので削除します。

 さらに、日付データが「Attribute:creationDate」、「Attribute:startDate」、「Attribute:endDate」がありますが、1つのみ残せばよいので、「Attribute:creationDate」、「Attribute:startDate」は削除します。

 削除は、削除する列を選択し(「ctrl」を押しながら列を選ぶと複数選択)、右クリックで「列の削除」をクリックすれば削除できます。」

エラー値の行の削除

 次に、「Attribute:value」には、それぞれの測定値が入っていますが、これらの中で「Error」となっている行があるので、それらの行を削除します。

 この時点で、行数は97,049行です。

日付の分割

 日付が「2018/11/11 10:22:30 +09:00」の形で入力されていますので、年月日と時刻に分割し、時刻部分は必要ないので削除します。

 分割は、年月日と時刻の間に半角スペースがあるので、それを利用して、区切り文字で「スペース」を選択して「OK」をくクリックするこにより分割します。

 時刻列の削除は、列削除で示したように時刻列を選択し、右クリックで「削除」をクリックすれば削除できます。

不要な文字の削除

 最初の列の「HKQuantityTypeIdentifier」は不要なので削除します。

 置換を用いて「HKQuantityTypeIdentifier」を「」に置換すれば削除できます。

測定値ごとにグループ化

 一応これで、テーブルはできましたが、測定値ごとにグループ化しておいた方が後でグラフ化などをする際には便利です。

 グループ化は、グループ化したい列(Attribute:type)を選択し、上部メニューの「グループ化」をクリックし、表示されたグループ化画面で「新しい列名」⇒「対応表」、「操作」⇒「すべての行」を選択して、「OK」をクリックします。

 こうすることにより、測定項目ごとに表が作られ、その表を基にさらにデータの整理・加工ができます。

 

 ここでのすべての測定項目は、33種類あります。

 この中で、歩数「stepCount」について、次に表の整理・加工を行っていきます。

歩いた歩数表の整理・加工

 グループ化された対応表の「stepCount」の「Table」を右クリックして、「ドリルダウン」をクリックすると、歩数の日付ごとに記録された表が表示されます。

日付ごとの歩数の計算

 歩数の値は、ある時間区切りで歩数が記録されているので、同じ日で幾つも記録されているため、その日の歩数は日にちごとに足したものとなります。

 そこで、グループ化をして、値を日にち毎に合計してやります。

 これで、日にち毎の歩数がわかりますが、月、年毎にどれだけ歩いているかは、これからは直ぐにはわかりません。

 そこで、日付列から年と月を追加してやります。

 追加された年と月は整数型の数値になっていますので、年の数値には「変換」⇒「書式」⇒「サフィックスの追加」から値に「年」を、月の数値には「変換」⇒「書式」⇒「サフィックスの追加」から値に「月」を記入して「OK」をクリックします。

 作成した年と月の列を選択し、またグループ化をして、新しい名前を「歩数」、操作に「合計」、列に「歩数」を選択して、「OK」をクリックします。

 これで、表ができましたので、、「ファイル」⇒「閉じて読み込む」をクリックすると、作成した表がエクセルに張り込まれます。

 あとは、作成した表をすべて選択して、「テーブルデザイン」⇒「ピボットテーブルで集計」をクリックして、既存のテーブルを入れたい所をクリックしてそこにピボットテーブルを入れる場所を確保し、ピボットテーブル作成画面で行に「月」、列に「年」、値に「歩数」を入れてやれば、歩数の月合計、年合計が分かる表が作成できます。

Excelでヘルスケアデータの歩数、体重、BMIなどのブラフ化

 ここでは説明しませんが、グラフ化も表があるのでいくらでもヘルスケアのデータ表から作成できます。

 日ー歩数グラフ、歩数の年、月積み上げグラフ、体重ー日グラフ、BMIー日グラフ、体重ーBMI関係グラフなどを作成してみました。

おわりに

 如何だったでしょうか?

 phoneからヘススケアデータの出力はどうするの?、Excelにヘルスケアデータを読み込むにはどうするの?、ヘルスケアデータをPower Qureyエディターで整理・加工するにはどうするの?、不要な列の削除、エラー値の行の削除、日付の分割、不要な文字の削除、測定値ごとにグループ化、歩いた歩数表の整理・加工はどうするの?、日付ごとの歩数の計算、Excelでヘルスケアデータの歩数、体重、BMIなどのブラフ化などについて解説してきました。

 この記事が少しでもあなたにとって役に立てればこれほど嬉しいことはありません。

以上です。

 

コメント

タイトルとURLをコピーしました