ここでは、data/ifelse_casewhen.xlsxファイルを利用しましょう。
この練習問題、かなり難易度高いですが、ここまで解説した関数の集大成ですので是非、まずご自身で取り組んでから解答を確認してください。
データには身長(cm)、体重(kg)、血圧(収縮期/拡張期)飲酒有無(0なし、1あり)、喫煙有無(0なし、1あり)の列が含まれています。(データは私が適当にでっち上げたものなので、現実のものではありません。また、わざと入力ミスされているデータがありますのでこれまでに学んだ関数を駆使してデータをキレイにしつつ、課題を解いていってください。)
課題1:
身長と体重を利用して、BMIを計算してその結果をbmiという名前の列に保存してください。
課題2:
bmi列の値を利用して、if_else関数を使って、BMIが25以上であれば1、25未満であれば0となる列、obese、を作成してください。
課題3:
血圧の表示が”120/80”のように入力されています。これを、sbpとdbpの二つの変数に分割してください。
課題4:
課題3で作成した変数、sbp、dbpを利用して、
sbpが120未満かつdbpが80未満であれば「至適血圧」 sbpが130未満かつdbp85未満であれば「正常血圧」 sbpが140未満あるいはdbp90未満であれば「正常高値血圧」 sbpが160未満あるいはdbp100未満であれば「1度高血圧」 sbpが180未満あるいはdbp110未満であれば「2度高血圧」 sbpが180以上あるいはdbp110以上であれば「3度高血圧」
とした因子型の列を作成してください。
課題5:
課題1から課題4までで作成した変数を利用して、高血圧、肥満、飲酒、喫煙のリスクの個数を計算したriskという名前の列を作成してください。
(尚、ここでは、高血圧を1度から3度高血圧、肥満はBMI25以上とします)