Rで紫色の'cpを計算する方法
回帰分析では、 Mallows Cp は、いくつかの潜在的なモデルの中から最適な回帰モデルを選択するために使用されるメトリックです。
p +1 に近い最小の Cp 値を持つモデルを特定することで、「最良の」回帰モデルを特定できます。ここで、 pはモデル内の予測子変数の数です。
R で Mallows の Cp を計算する最も簡単な方法は、 olsrrパッケージのols_mallows_cp()関数を使用することです。
次の例は、この関数を使用してマローズの Cp を計算し、R のいくつかの潜在的なモデルの中から最適な回帰モデルを選択する方法を示しています。
例: R におけるマローズ Cp の計算
mtcarsデータセットの変数を使用して 3 つの異なる重線形回帰モデルを近似したいとします。
次のコードは、次の回帰モデルを近似する方法を示しています。
- 完全なモデルの予測変数: 10 個の変数
- モデル 1 の予測変数: disp、hp、wt、qsec
- モデル 2 の予測子変数: disp、qsec
- モデル 3 の予測子変数: disp、wt
次のコードは、これらの各回帰モデルを近似し、 ols_mallows_cp()関数を使用して各モデルの Mallows Cp を計算する方法を示しています。
library (olsrr) #fit full model full_model <- lm(mpg ~ ., data = mtcars) #fit three smaller models model1 <- lm(mpg ~ disp + hp + wt + qsec, data = mtcars) model2 <- lm(mpg ~ disp + qsec, data = mtcars) model3 <- lm(mpg ~ disp + wt, data = mtcars) #calculate Mallows' Cp for each model ols_mallows_cp(model1, full_model) [1] 4.430434 ols_mallows_cp(model2, full_model) [1] 18.64082 ols_mallows_cp(model3, full_model) [1] 9.122225
結果を解釈する方法は次のとおりです。
- モデル 1: p + 1 = 5、マローズ Cp = 4.43
- モデル 2: p + 1 = 3、マローズ Cp = 18.64
- モデル 3: p + 1 = 30、マローズ Cp = 9.12
モデル 1 の Mallows の Cp 値がp + 1 に最も近いことがわかります。これは、モデル 1 が 3 つの潜在的なモデルの中で最小のバイアスをもたらす最良のモデルであることを示しています。
Cp des mauves についてのメモ
Mallows Cp について留意すべき点は次のとおりです。
- 各潜在モデルのマローズ Cp 値が高い場合、これは、いくつかの重要な予測変数が各モデルから欠落している可能性があることを示します。
- いくつかの潜在的なモデルの Mallow’s Cp の値が低い場合は、使用する最適なモデルとして最も低い値を持つモデルを選択します。
Mallows の Cp は、いくつかの潜在的なモデルの中から「最良の」回帰モデルを特定する 1 つの方法にすぎないことに留意してください。
もう 1 つの一般的に使用される尺度は、調整済み R 二乗です。これは、使用される予測子変数の数に合わせて調整された、モデル内の予測子変数によって説明できる応答変数の分散の割合を示します。
いくつかの異なるモデルのリストの中でどの回帰モデルが最適であるかを判断するには、Mallows の Cp と調整済み R 二乗の両方を調べることをお勧めします。