
【自由研究】 5年分の睡眠トラッキングデータを統計とGeminiで分析してみる
こんにちは、データ事業本部の川中子(かわなご)です。
当記事はクラスメソッドの有志による『夏休みの自由研究リレー』 第9回のエントリです。
このブログリレーの企画は、普段からクラウドやAIを追いかけているメンバーによって、
「やってみた」だけではなく「作ってみた」や「調査/研究してみた」もアウトプットしてみようという企画です。
新たな知見になることは勿論、アイデアを自社やコミュニティの発展に寄与できればと考えておりますので、お付き合い頂けますと幸いです。
では、さっそくいってみましょう。今回の記事は『5年分の睡眠トラッキングデータを統計とGeminiで分析してみる』です。
なぜこのテーマにしたか
突然ですが、皆さん夏って好きですか?嫌いですか?
私は嫌いです。
なぜなら夜が暑くて寝苦しいから。
夏はアイスが美味しいとか、アウトドアが楽しいと言う人もいますが、
アイスは季節関係なく美味しいし、冬のキャンプが至高なので、夏じゃなくていいんです。
あと夏は日が出るのも早いので、自然光によって生かされてる私は、
日が長い季節になると起きる時間も自然と早くなりがちで、
全体的な睡眠時間が短くなっているなぁと、なんとなく感じていました。
他の人はどうなんだろうと思い、夏の睡眠について軽く調べてみると、
2024年に男女1000人を対象に行われたYakult1000の睡眠実態調査を見つけました。
やっぱり8割以上の人が8月に「寝苦しい」と感じているみたいです。
冷房の管理やパートナーの寝相など、夏の夜は睡眠課題がいっぱいなのです。
(私のパートナーは寝言で「疲れた〜」と言ってました)
そんな夏の睡眠について、実際に自分のデータを使って調べて見ようと思いました。
私は2021年からスマートウォッチを着けて寝ており、十分な量の睡眠データが手元にありました。
公開されている気象データと突き合わせれば、気温と睡眠の関係を客観的に分析できるはずです。
使用データ
今回の分析で使用するデータは、Samsung Healthから取得しました。
またそれに突き合わせるデータ気象データは、Open-Meteo APIから取得しています。
使用可能なデータ一覧は以下のようになっています。
| データ | ソース | 期間 | 件数 |
|---|---|---|---|
| 睡眠データ | Samsung Health | 2021/3〜2026/8 | 約1,000日分 |
| 気象データ | Open-Meteo API | 同上 | 約2,000日分 |
寝ている間の睡眠状況をトラッキングしてくれるスマートウォッチは、
2021年3月から付けていたのですが、2023年8月に液晶が飛んでいってしまったので、
その間の睡眠データは完全に欠損している状態になっています。
Samsung Healthのデータはアプリから簡単にダウンロードできます。


データの背景についてですが、この期間中に函館→東京→神戸と引っ越しをしているため、
寝室や寝具の環境も大きな変化がある点にも注意をしておきたいですね。
2つのデータを日付で結合し、睡眠・気温の両方が揃った1,020日分を分析対象としています。
分析前の予想
分析に入る前の、直感的な自分の予想を書いておきます。
- 暑い日(特に熱帯夜)は寝つきが悪く、睡眠スコアも下がるだろう
- 函館時代が一番涼しいので、睡眠の質も良かったのでは?
さて、データはこの予想を支持してくれるでしょうか。
なお分析はローカル環境のpythonで統計的な手法を使っていきます。
統計的な手法の詳細についてはこの記事では省略させていただきます。
レッツ分析
まずはデータをざっくり見てみる
まずは分析のセオリーとして、睡眠データそのものを眺めてみます。
睡眠スコアと睡眠時間の30日移動平均を時系列で描画してみました。

全体的に見てみると、ゆるやかに睡眠スコアは改善していて、
逆に睡眠時間は短くなっていっているようなグラフに見えますね。
睡眠時間は短くなるけど睡眠の質は改善しているというのが全体の傾向のようです。
この時点でも若干イメージとはズレがありますね。
気持ち的には毎日8時間は寝たいなぁと強く願っています。
気温と睡眠スコア
まずはシンプルに平均気温と睡眠スコアの散布図を描いてみました。

思ってたほど相関がない。
しかも気温が高い方が睡眠のスコアが高くなっていますね。
平均気温と睡眠データの相関係数とp値を見てみましょう。
| 分析項目 | 相関係数(r) | p値 | 判定 |
|---|---|---|---|
| 平均気温 vs 睡眠スコア | 0.077 | 0.014 | 有意 |
| 平均気温 vs 睡眠時間 | -0.101 | 0.001 | 有意 |
統計的には有意ですが、相関係数はいずれも非常に小さい値でした。
グラフには描画していませんが、睡眠時間は気温が低い方が長いようです。
これはおそらく日の出が遅いので、その分起きるのも遅いためだと思われます。
熱帯夜だけで見てみる
次は切り口を少し変えて、熱帯夜という極端な条件で分けて比較してみました。
なお定義としては、最低気温が25℃以上の日を熱帯夜としています。

| 指標 | 熱帯夜 (N=76) | 通常夜 (N=944) | p値(Welchのt検定) | p値(Mann-WhitneyのU検定) | 判定 |
|---|---|---|---|---|---|
| 睡眠スコア | 70.8 | 68.4 | 0.164 | 0.044 | 有意? |
| 睡眠時間(分) | 373.6 | 415.4 | 0.003 | 0.0003 | 有意 |
熱帯夜に分類されるサンプル数が少ないので若干信頼性に欠けますが、
2つの検定手法で調べてみると、やはり暑い日は有意に睡眠時間が短くなるようです。
一方で睡眠スコア自体に有意な差は見られませんでした。
気温帯で分けてみる
もう少し細かく見るために、平均気温を5℃刻みに分けて睡眠スコアを描画しました。

| 気温帯 | 睡眠スコア | N |
|---|---|---|
| ~5℃ | 67.0 | 176 |
| 5-10℃ | 68.5 | 154 |
| 10-15℃ | 68.7 | 191 |
| 15-20℃ | 66.1 | 184 |
| 20-25℃ | 69.8 | 167 |
| 25-30℃ | 73.4 | 123 |
| 30℃~ | 65.9 | 25 |
気温帯で分けて睡眠スコアを見てみると、また受ける印象がガラッと変わりますね。
寒い方から10-15℃にかけてはスコアが改善しつつ、15-20℃で下がり、
25-30℃でスコアが最高値になるという特徴的な結果になっています。
7つの群に分けてKruskal-Wallis検定を実施してみると、
気温帯間の睡眠スコアの差はH=30.48, p=0.000032で有意差ありになりました。
このグラフを見て、そういえば寝室の空調を忘れてたなぁと思いました。
体感的に平均気温が10-15℃になる春や秋は気持ちよく眠れることが多く、
平均気温が20-25℃になる夏本番はガッツリ冷房を効かせて寝ているので、
実は暑くなり始める15-20℃が一番寝苦しさを感じやすいのかも知れません。
実際人間が眠くなるのは深部体温が下がっていくタイミングだと言われているので、
入浴で上がった体温が空調で冷やされることで、睡眠の質を向上させていたのかも知れません。
平均気温が30℃を超える日の睡眠スコアが低いのはなぜでしょう...。
寝るときの冷房はタイマーで夜中に切れるようにしているので、
暑すぎると朝方に寝苦しくなってしまって睡眠の質が下がっている可能性もありますね。
居住地で分けてみる

| 居住地 | 期間 | 睡眠スコア | 睡眠時間(分) | N |
|---|---|---|---|---|
| 函館 | 2021/3〜2022/6 | 61.7 | 434.5 | 414 |
| 東京 | 2022/7〜2024/4 | 70.6 | 422.1 | 271 |
| 神戸 | 2024/5〜2026/8 | 75.5 | 377.1 | 335 |
こちらはKruskal-Wallis検定で両方p<0.001と高度に有意でした。
Bonferroni補正した事後検定でも、全てのペアで有意差が出ていました。
函館時代はまだ独り身で自由気ままでしたし、気温も東京や神戸と比べると低いので、
睡眠の質は一番いいと予想していましたが、まったく逆の結果になりましたね。
言われてみれば、今が一番周期的な睡眠習慣になっているような気もするので、
生活習慣的な影響も大きいのかなぁと予想しています。
5年間の推移
改めて、夏の期間に絞って5年間の推移を眺めてみましょう。
以下グラフの平均気温は、その年の6~8月の各日の平均気温の平均を取っています。
平均気温の平均を取るって、すごい変な感じがしますね。
なお前述の通り、2023/8/3〜2025/8/14のデータは欠損しています。

| 年 | 平均気温 | 睡眠スコア | 睡眠時間 |
|---|---|---|---|
| 2021 (函館) | 20.0℃ | 55.9 | 7.4h |
| 2022 (函館→東京) | 23.3℃ | 70.1 | 6.9h |
| 2023 (東京) | 25.9℃ | 71.2 | 6.6h |
| 2025 (神戸) | 28.8℃ | 74.7 | 6.7h |
| 2026 (神戸) | 25.2℃ | 71.9 | 6.2h |
こうやって見てみると、年々睡眠時間が短くなっていて心配になります。
そして2021年に睡眠の質が低すぎるのも心配ですね。
当時は仕事の関係で、夜中の2時とかに家に帰っていたのも原因かも知れません。
やはり朝早く起きて夜は早く寝る、これが人間を長生きさせる生き方なんでしょう。
Geminiにもお願いしてみる
ここまではPythonで統計的な手法を使って分析してきました。
でも今は夏なので、できるだけ自分のPCのCPUは使いたくないですよね。
なので分析で使った結合済みCSVをそのままGeminiにも投げてみました。
以下のCSVは、ある個人の5年分の睡眠・気象データです。
以下の問いに対して、データを読み解いて回答してください。
1. 気温が高い日は睡眠の質が悪い?
2. 熱帯夜(最低気温25℃以上)の日は眠れていない?
3. 居住地(函館/東京/神戸)によって睡眠の傾向に違いはある?
あえて相関とか検定といった統計用語は使わず、カジュアルな聞き方にしました。
果たしてGeminiも私と同じような分析を勝手にやってくれるんでしょうか。
これでもし同じ結論になったら、私が分析した時間は無駄ということになります。
どうか、良い感じにちょっと足りない分析結果になっててください。
Geminiの回答
Geminiの回答はこちらです。
私の時間は無駄でした、ありがとうございました。

Geminiの回答1
ご提示いただいた5年分の睡眠・気象データを分析しました。計測エラーと思われる「睡眠スコア0」のデータを除外し、有効なデータ(全1,018日分)から傾向を読み解いた結果をご報告します。
-### 1. 気温が高い日は睡眠の質が悪い?
結論:気温の高さと「睡眠の質(スコア)」には、直接的な関係は見られませんでした。
- データに基づく根拠
最高気温や平均気温と「睡眠スコア」の相関係数は約 0.07〜0.08 となり、統計的に見てほとんど無関係(無相関)でした。つまり、気温が高いからといって一概に睡眠の質が悪化しているわけではありません。 - ただし「睡眠時間」には微かな影響あり
気温と「睡眠時間」の相関係数は約 -0.11 でした。非常に弱い傾向ですが、気温が高くなると少しだけ睡眠時間が短くなる傾向があるようです。
-### 2. 熱帯夜(最低気温25℃以上)の日は眠れていない?
結論:質(スコア)は悪化していませんが、睡眠時間は短くなる傾向があります。
熱帯夜(76日)と、それ以外の日(942日)の平均値を比較しました。
-
睡眠スコア(質)
-
熱帯夜:70.8点
-
非熱帯夜:68.5点
意外にも、熱帯夜の方がわずかにスコアが高く、睡眠効率も良い結果となりました(統計的な有意差はありません)。エアコン等を活用してうまく寝室環境を調整できている可能性が考えられます。 -
睡眠時間
-
熱帯夜:約6.2時間(373分)
-
非熱帯夜:約6.9時間(416分)
質は保たれているものの、熱帯夜の日は平均して40分ほど睡眠時間が短くなっていました。
-### 3. 居住地(函館/東京/神戸)によって睡眠の傾向に違いはある?
結論:居住地によって「睡眠時間」と「睡眠の質」の傾向に明確な違いが見られました。
各都市の平均値は以下の通りです。
| 居住地 | 記録日数 | 平均睡眠スコア | 平均睡眠時間 | 平均睡眠効率 |
|---|---|---|---|---|
| 函館 | 412日 | 62.0点 | 7.3時間(436分) | 86.9% |
| 東京 | 271日 | 70.6点 | 7.0時間(422分) | 88.3% |
| 神戸 | 335日 | 75.5点 | 6.3時間(377分) | 93.6% |
- 函館の傾向:3都市の中で最も睡眠時間が長いですが、睡眠スコアと睡眠効率は一番低くなっています(長く寝ているが、質はそこまで高くない)。
- 神戸の傾向:函館とは対照的に、最も睡眠時間が短いですが、睡眠スコアと睡眠効率はトップです(短い時間で効率良く、質の高い睡眠をとっている)。
- 東京の傾向:時間・質ともに、函館と神戸の中間程度の数値を記録しています。
ライフスタイル(通勤時間、労働環境、日照時間など)の変化が、居住地ごとの睡眠スタイルに大きく影響している様子がデータから読み取れます。
Gemini半端ないって〜!
雑な依頼で統計検定までするもん!
そんなんできひんやん普通!
ちなみに「他に分かることって何かある?」って雑に聞いたら、
私が調べてないようなことを色々教えてくれました。
Geminiの回答2
(一部省略)
-### 2. 「木曜日」が一番寝不足になりやすい?
曜日別に平均睡眠時間を集計したところ、生活リズムの傾向がくっきりと現れました。
- 一番睡眠時間が短いのは「木曜日(約6.5時間 / 389分)」です。週の後半に向けて疲れが溜まりつつも、忙しさから睡眠時間が削られている様子がうかがえます。
- 反対に、一番長く寝ているのは「日曜日(約7.2時間 / 431分)」と「金曜日(約7.1時間 / 429分)」でした。週末にいわゆる「寝だめ」をして、木曜日までの睡眠負債を返済しているようなサイクルが見て取れます。
-### 3. 「1月」は一番よく眠っている
月ごとの平均睡眠時間を出してみたところ、「1月」が突出して長く、平均約7.4時間(446分)も眠っていました。年末年始の休暇が含まれていることや、日照時間が短く寒いため、布団の中にいる時間が長くなっていることが考えられます。
逆に、3月〜5月にかけては睡眠時間が400分(約6.6時間)を下回る月が多く、春先の環境変化や多忙さが影響しているかもしれません。
他にも「休日の前日に夜更かししているか?」といった分析も可能ですが、気になるトピックはありますか?
怖いよもう。なんでも教えてくれるもん。
やっぱりデータ分析において、データが整理できていればAIの力は偉大です。
分かったことと考察
分析前の予想と結果を照らし合わせてみます。
| 予想 | 結果 | 判定 |
|---|---|---|
| 暑い日は睡眠スコアが下がる | 相関r=0.08でむしろ微増 | ✗ |
| 函館時代が一番よく眠れていた | 函館が最も低スコア(61.7) | ✗ |
最初の予想とは全く逆の結果になってしまいましたね。
この結果から考えられることは以下の通りです。
- 実は夏の方が空調の影響によって眠りにつきやすい環境になっていた。
- 睡眠の質は気温よりも生活環境全体の影響が大きい
- (AIによるデータの分析は非常に強力である)
またここまで触れていなかったのですが、機器による差も考慮が必要です。
途中で計測するスマートウォッチが変わっているので、その影響もあるかも知れません。
またスコアが高くても、実際の身体の状況とは異なる可能性もありますね。
さいごに
結局Geminiに全てを凌駕されてしまった私の自由研究でしたが、
久しぶりにデータをこねくり回すような作業ができて楽しかったです。
実際の自分の状態を計測したデータは貴重なので、体感と比較できたのも面白かったです。
実際に分析を進めていると、データでは表現できていない背景なども見えてきて、
こういうデータもあるといいなぁと考えるのもデータ分析の醍醐味ですね。
あまり技術的な参考になる記事ではないかも知れませんが、
皆さんの睡眠環境や生活習慣を見直すきっかけくらいにはなっていたら嬉しいです。
最後まで記事を読んでいただきありがとうございました。
以上、『夏休みの自由研究リレー』の第9回のエントリ『5年分の睡眠トラッキングデータを統計とGeminiで分析してみる』でした。
次回は芦沢さんのCloudFrontに関する記事の予定です。お楽しみに!!





