見出し画像

Stata初心者 #3 cond関数(Stata版 IF関数)

 エクセルの作業でIF関数を使える事は、初心者脱却の登竜門である。当然、Stataでも様々な条件分岐が必要であり、その一つに「cond関数」がある。おそらくcondition(条件)の略である。


ダミーデータの読み込み

ダミーの表

Stataでは基本的にクリックだけでエクセルデータのインポートができる。
[ファイル]
  →[インポート]
  →  読み込むデータ形式(エクセルならxlsやxlsx)
と進める。
今回は、20人の年齢、身長、体重が入ったデータを使用する。

変数(BMI)の生成

 とりあえず、分析っぽくするために変数を生成する。変数の生成はgen(またはgenerate)であり、

gen bmi =weight/(height*0.01)^2

でBMIを表す変数bmiを生成する。

BMIの値で仕分け(cond関数の使用)

ここで、BMI 25以上を「obesity」、25未満を「not」と仕分けしたい。
エクセルなら

=if(BMIのセル>=25,"obesity","not")

となる。stataでそれを判別する列の変数を「body」とすると、

gen body  = cond(bmi>=25, "obesity","not")

となり、以下の結果になる。

計算実行結果の表

bmiの小数点以下の多さが気持ち悪いので、stata初心者#2で学んだ変数の型を変更して、bmiの変数のフォーマットを%10.0g → %3.1fとして下記の表が完成する。

最終の表

エクセルだと一瞬だが、Stataだとまだまだ手こずる。道は長いが、エクセルの学び初めの様で楽しさもある。頑張ろう。



この記事が気に入ったらサポートをしてみませんか?