回答:
Georges Monetteと私は、論文「Generalized collinearity diagnostics」JASA 87:178-183、1992(リンク)でGVIFを紹介しました。説明したように、GVIFは、係数のサブセットの結合信頼楕円体のハイパーボリュームと、このサブセットの回帰変数が相補サブセットの回帰変数と相関しない場合に得られる「ユートピア」楕円体の二乗比を表します。単一の係数の場合、これは通常のVIFに特化しています。次元間でGVIFを比較可能にするために、GVIF ^(1 /(2 * Df))を使用することを提案しました。ここで、Dfはサブセット内の係数の数です。実際には、これはGVIFを線形尺度に減らし、VIF(Df = 1)の場合、係数の信頼区間の共線性によるインフレーションに比例します。
私はまったく同じ質問にぶつかり、自分の道を進めようとしました。以下の詳細な回答を参照してください。
まず、Rで同様のVIF値を生成する4つのオプションを見つけました。
• corvif
AEDパッケージのコマンド、
• vif
自動車パッケージからのコマンド、
• vif
rmsパッケージのコマンド、
• vif
DAAGパッケージからのコマンド。
因子/カテゴリ変数または多項式項を含まない一連の予測変数でこれらのコマンドを使用することは、簡単です。corvif
AEDパッケージのコマンドが結果をGVIFとラベル付けしても、3つのコマンドはすべて同じ数値出力を生成します。
ただし、通常、GVIFは因子と多項式変数に対してのみ有効です。複数の係数を必要とするため、1つの自由度を超える変数は、通常、GVIFを使用して評価されます。1係数の項では、VIFはGVIFと等しくなります。
したがって、3、5、または10のしきい値など、共線性が問題になる可能性があるかどうかについて、標準的な経験則を適用できます。ただし、いくつかの注意を適用する必要があります(参照する必要があります)(http://www.nkd-group.com/ghdash/mba555/PDF/VIF%20article.pdfを参照)。
カテゴリ係数予測子などの多係数項の場合、4つのパッケージは異なる出力を生成します。vif
rmsおよびDAAGパッケージのコマンドはVIF値を生成しますが、他の2つのコマンドはGVIF値を生成します。
まず、rmsおよびDAAGパッケージのVIF値を見てみましょう。
TNAP ICE RegB RegC RegD RegE
1.994 2.195 3.074 3.435 2.907 2.680
TNAPとICEは連続予測変数であり、RegはダミーのRegBからRegEによって提示されるカテゴリ変数です。この場合、RegAがベースラインです。すべてのVIF値はやや中程度で、通常は心配する必要はありません。この結果の問題は、カテゴリー変数のベースラインの影響を受けることです。VIF値が許容レベルを超えていないことを確認するには、ベースラインとなるカテゴリ変数のすべてのレベルに対してこの分析をやり直す必要があります。この場合は5回です。
corvif
AEDパッケージのvif
コマンドまたはcarパッケージのコマンドを適用すると、GVIF値が生成されます。
| GVIF | Df | GVIF^(1/2Df) |
TNAP | 1.993964 | 1 | 1.412078 |
ICE | 2.195035 | 1 | 1.481565 |
Reg | 55.511089 | 5 | 1.494301 |
GVIFは、ダミーの説明変数のセットなど、関連する説明変数のセットに対して計算されます。2つの連続変数TNAPおよびICEの場合、これは以前のVIF値と同じです。カテゴリ変数Regの場合、カテゴリ変数の単一レベルのVIF値はすべて中程度であったにもかかわらず(上記を参照)、非常に高いGVIF値を取得します。
カテゴリー変数の値は、共線性による係数の推定精度の低下の同様の尺度です(引用の準備ができていなくても、http: //socserv2.socsci.mcmaster.ca/jfox/papers/linear-も参照してください) models-problems.pdf)。
[ASK QUESTION]
は、上部のをクリックして質問してください。適切なサポートを提供できます。ここは初めてなので、新しいユーザー向けの情報が含まれるツアーをご覧ください。