予測値を比較する
前の演習では、crab データを使って width から y を予測する線形回帰モデルと GLM(ロジスティック)回帰モデルの両方を当てはめました。つまり、雌の幅が与えられたときに、近くにサテライトのオスガニがいる確率を予測したい、という設定でした。
この演習では、2つのモデルから得られた推定確率(出力)を詳しく確認し、今回の問題に線形モデルの当てはまりが適切かどうかを考察します。
一般的には、モデルは新しい(まだ見ていない)データでテストします。このようなデータセットは test サンプルと呼ばれます。
test サンプルはすでに作成され、ワークスペースに読み込まれています。モデルに含まれるすべての変数についてテスト値が必要になる点に注意してください。この例では width です。
crab データセットはワークスペースに読み込まれ済みです。
この演習はコースの一部です
Pythonで学ぶ一般化線形モデル
演習の手順
print()を使ってtestセットを表示します。testサンプルを使い、当てはめ済みの線形モデルmodel_LMに対して.predict()を実行して推定確率を計算し、pred_lmに保存します。同様に、当てはめ済みの GLM(ロジスティック)モデルmodel_GLMに対して.predict()を実行して推定確率を計算し、pred_glmに保存します。pandasのDataFrame()を使って、両モデルの予測を結合し、predictionsに保存します。testとpredictionsを連結してall_dataに保存し、print()でall_dataを表示します。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# View test set
print(____)
# Compute estimated probabilities for linear model: pred_lm
____ = model_LM.____(____)
# Compute estimated probabilities for GLM model: pred_glm
____ = model_GLM.____(____)
# Create dataframe of predictions for linear and GLM model: predictions
____ = pd.DataFrame({'Pred_LM': ____, 'Pred_GLM': ____})
# Concatenate test sample and predictions and view the results
all_data = pd.concat([____, ____], axis = 1)
print(____)