1. 学ぶ
  2. /
  3. コース
  4. /
  5. R による Supervised Learning:回帰

Connected

演習

スズメの生存確率のモデルを当てはめる

この演習では、厳しい冬の嵐でスズメが生き延びる確率を、スズメの身体的特徴に基づいて推定します。データセット sparrow はすでに読み込まれています。予測する目的変数は status("Survived", "Perished")です。考慮する変数は次のとおりです。

  • total_length: くちばしの先から尾の先までの全長(mm)
  • weight: 重量(グラム)
  • humerus : 上腕骨(翼と胴体をつなぐ「上腕の骨」)の長さ(インチ)

glm()(docs)でロジスティック回帰モデルを作成するときは、必ず family = binomial を明示的に指定します。

glm(formula, data = data, family = binomial)

ロジスティック回帰モデルを確認するために、summary() と broom::glance() を呼び出します。診断指標の一つとして、\(R^2\) の類推である疑似-\(R^2\) を見ていきます。

$$ pseudoR^2 = 1 - \frac{deviance}{null.deviance} $$

逸脱度(deviance)は分散に相当する概念で、カテゴリカルデータにおける変動の大きさを表します。疑似-\(R^2\) は通常の回帰における \(R^2\) に相当し、\(R^2\) が回帰モデルの「分散の説明度」を示すのに対して、疑似-\(R^2\) は「逸脱度の説明度」を示します。

指示

100 XP
  • 動画で説明したとおり、TRUE と FALSE の結果を予測します。status == "Survived" のときに TRUE となる新しい列 survived をデータフレーム sparrow に作成してください。
  • 関心のある変数を説明変数として、survived を目的変数にする式 fmla を作成し、表示してください。
  • スズメの生存確率を予測するロジスティック回帰モデルを当てはめ、変数 sparrow_model に代入してください。
  • summary() を呼び出して、係数、逸脱度(deviance)、ヌル逸脱度(null deviance)を確認してください。
  • モデルに対して glance() を呼び出し、逸脱度などの診断情報をデータフレームで確認してください。glance() の出力は変数 perf に代入します。
  • 疑似-\(R^2\) を計算してください。