タイピングでチョコ1個分のカロリー消費!? 1日の運動量を可視化してみた


<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/812363/be94286d-3905-3372-2778-91aa1f208d8e.jpeg" width=50%>

# 1. はじめに
いきなりですが、私は最近ダイエットをしています。
カロリーを気にしながら生活していると、ふと疑問が湧きました。  

**タイピングってどれくらいカロリー消費しているんだろう？**
**1日中キーボードに触っているなら結構運動になるのでは？** 

ということで、検証していきます。

::: note warn
あくまで素人の検証のため、ネタ・参考程度にお読みください。
:::
# 2. 検証方法
以下の順番で計算していきます。

① 1日のタイピング回数を集計
② タイピング1回で消費するカロリーを計算
③ 1日の消費カロリーを計算


# 3. 検証
## ① 1日のタイピング回数を集計

**定義：1回＝キーボードを1回ポチっと押すこと**

タイピング回数を計測するアプリをPythonで作ってみました。

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/812363/bd80cb03-ee26-d346-b577-179e8bda34f4.png" width=40%> ←タイピング数がリアルタイムで表示されます



```typeCount.py
import tkinter
from pynput.keyboard import Key, Listener

# ウィンドウ設定
window = tkinter.Tk()
window.title("Typing Counter v1.0")
window.geometry("300x300+100+100")

# ラベルの作成
labelCount = tkinter.Label(window, text="Hello, Tkinter!")
labelCount.pack(pady=20)

# カウントアップ関数
def countUp():
    tmpCnt = cnt.get()
    tmpCnt += 1
    cnt.set(tmpCnt)
    labelCount.config(text=tmpCnt)

def on_pressFunc(key):
    countUp()

# カウンター
cnt = tkinter.IntVar()
cnt.set(0)

# キーボードのイベントリスナーを作成
listner = Listener(on_press=on_pressFunc)
listner.start()

# メインループ
window.mainloop()
```
※まだ改善の余地がありますが…

## 計測結果(抜粋)
| 日付 | タイピング回数 |
|:-:|:-:|
|11月1日|17154回|
|11月2日|10439回|
|11月3日|17820回|
|11月4日|15659回|
|11月5日|15956回|
|11月6日|22928回|
| …  | …  |

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/812363/a5e74b72-2030-d099-9b1e-c4fdff351117.png" width=65%>

日によって結構ばらつきがありますね。

:::note info
平均は **19538**回でした。この値を使用します。
:::

## ②タイピング1回で消費するカロリーを計算
### 計算方法：心拍数の差分からキーボード操作の消費カロリーを求める
測定方法は様々ありますが、身近で分かる観点が**心拍数**(AppleWatch様)だったため、こちらを採用します。

1分あたりの消費カロリー(kcal)の計算式は以下です。
``` math
消費カロリー＝（心拍数×体重[kg]×0.6309) / 1000
```
※この計算式は運動時の消費カロリーを心拍数から算出する際に、一般的に使用されるものです[^1]

計算式をもとに以下を計算していきます。
- A：安静時の心拍数の消費カロリー
- B：タイピング時の心拍数の消費カロリー

:::note info
**Aの値－Bの値**でタイピング時に消費カロリーがどの程度増加したか求められます。
:::

### タイピング状態を作り、心拍数を測定します。
#### お馴染みの寿司打です
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/812363/e9b08ccd-ce96-2c97-6eb4-072f861dc857.png" width=50% >

:::note info
平均タイピング数： 4.6 回 / 秒　→ **１分辺りに276回タイピング**
:::

#### 心拍数をAppleWatchで測定

- 安静時の心拍数　：**64**回
- 寿司打時の心拍数：**73**回
※この記事書いている時間帯も73回くらいだったので、だいたい合っていそう。

#### タイピング1回の消費カロリーの計算
なお、体重は65kgです。

- A：静時の心拍数の消費カロリー
消費カロリー＝（64bpm × 65kg × 0.6309) / 1000 ＝2.624544 [Kcal]

- B：タイピング時の心拍数の消費カロリー
消費カロリー＝（73bpm × 65kg × 0.6309) / 1000 ＝2.9936205 [Kcal]

- A－B：1分辺りにタイピング時に消費するカロリー
2.9936205kcal-2.624544kcal＝ 0.3690765[Kcal]

- タイピング1回で消費するカロリー
0.3690765kcal ÷ 276回＝0.0013372336956522[Kcal]

:::note info
タイピング1回で、**約0.001kcal**消費することが明らかになりました。
:::

## ③ 1日の消費カロリーを計算
ようやく材料が揃ったので、最後の計算をしていきます。

- 1日のタイピング数(平均)：19538[回]
   ×
- タイピング1回の消費カロリー：0.0013372336956522[Kcal]

:::note info
１日の消費カロリー＝**26.12[Kcal]** (端数切上)
:::

# 4. まとめ

1日のタイピングで消費するカロリーは **約26Kcal**でした。

数Kcalくらいかと予想していたので、思ったより消費していました。


また、26Kcalは**チョコ1個のカロリーと同等**です。
1日1個チョコ分が消費されていると思うと、意外と無視出来ない数字ですね。

もっと消費カロリーを増やしたい人は、
キーボードのキーを押し込む重さを強くしたら、
運動量が上がって消費カロリーも増えると思います(?)

ちなみに、**26Kcalと同等の運動は、散歩10分**です。[^2]

:::note info
～タイピングも良いですが、散歩などの運動も大切に～
:::

# 5. おわりに
ふとしたアイデアから考え出したら、意外と考える事が多くて楽しかったです。

来年のボディビルコンテストに向けて、これからもキーボードを叩いてダイエットを頑張っていこうと思います。

**あなたは1日何回キーボードを叩いていますか？**


最後まで読んでいただき、ありがとうございました！



[^1]:Keytel, L.R., Goedecke, J.H., Noakes, T.D., et al. (2005). Prediction of energy expenditure from heart rate monitoring during submaximal exercise.

[^2]:ウォーキングでカロリー消費！ダイエットに効果的な歩く速度や時間とは (https://health.docomo.ne.jp/column/diet/0414)