mike-neckのブログ

Java or Groovy or Swift or Golang

適正体重とはなんだったのか

こんなツイートがまわってきてた

なんか数値がおかしいと思ったので、BMIについて調べて、標準的な体重の幅を求めてみた。

def revBmi = {int tall ->
    def t = tall / 100 as double
    [min: 18.5 * t ** 2, max: 25 * t ** 2]
}

println '身長(cm)|これ以下なら痩せ(kg)|ここまで普通(kg)'
println '--:|--:|--:'
(145..190).collect {
    def w = revBmi(it)
    [tall: it, min: w.min, max: w.max]
}.each {
    println "${it.tall}|${String.format('%4.1f', it.min)}|${String.format('%4.1f', it.max)}"
}
println ''

実行結果は次の表のとおり

身長(cm) これ以下なら痩せ(kg) ここまで普通(kg)
145 38.9 52.6
146 39.4 53.3
147 40.0 54.0
148 40.5 54.8
149 41.1 55.5
150 41.6 56.3
151 42.2 57.0
152 42.7 57.8
153 43.3 58.5
154 43.9 59.3
155 44.4 60.1
156 45.0 60.8
157 45.6 61.6
158 46.2 62.4
159 46.8 63.2
160 47.4 64.0
161 48.0 64.8
162 48.6 65.6
163 49.2 66.4
164 49.8 67.2
165 50.4 68.1
166 51.0 68.9
167 51.6 69.7
168 52.2 70.6
169 52.8 71.4
170 53.5 72.2
171 54.1 73.1
172 54.7 74.0
173 55.4 74.8
174 56.0 75.7
175 56.7 76.6
176 57.3 77.4
177 58.0 78.3
178 58.6 79.2
179 59.3 80.1
180 59.9 81.0
181 60.6 81.9
182 61.3 82.8
183 62.0 83.7
184 62.6 84.6
185 63.3 85.6
186 64.0 86.5
187 64.7 87.4
188 65.4 88.4
189 66.1 89.3
190 66.8 90.3

ツイートの内容は、BMIで標準の範囲とされる体重の上限の値ですね。だからツイートの数値を上回るような体重になると肥満と診断されるでしょう。まあ、おそらくネタツイートでしょうけど…

そういえば、最近、こんなトゲッターを見ました。

togetter.com

女性に体重の話をするのはタブーとかなんとかで、結局男性は女性の標準的な体重ってイメージがわかないのだが、先ほどの記事を読む限りBMIの値については男性・女性の区別はないらしい。したがって、身長154cmで体重44kgというと、上の表では体重幅の下限近辺の値なので、痩せていると言ってもいいくらいですね。

結論

指標の数値知ってると、何かをやらかすことはないってことですかね