重回帰を行うときに予測変数を変換するのはいつですか?


10

私は現在、大学院レベルで最初に適用した線形回帰クラスを採用しており、多重線形回帰での予測子変数変換に苦労しています。私が使用しているテキスト、Kutner et al "Applied Linear Statistical Models"は、私が抱えている質問をカバーしていないようです。(複数の予測子を変換するためのBox-Coxメソッドがあることを示唆することは別として)。

応答変数といくつかの予測変数に直面した場合、各予測変数に対応するためにどのような条件が求められますか?私たちは最終的には誤差分散の恒常性と正規分布のエラーを探している理解して(私がこれまで教えてきた技術で、少なくとも。)私は解決策があった場所、多くの演習では、例として、戻ってきて持っていましたy ~ x1 + (1/x2) + log(x3)、 1つ以上の予測子が変換されました。

y〜x1と関連する診断(残差のqqプロット、残差vs. y、残差vs. xなど)を確認し、y〜log( x1)私たちの仮定にもっとよく適合します。

多くの予測変数が存在する場合に予測変数を変換するタイミングを理解するための良い場所はありますか?

前もって感謝します。マット

回答:


3

私はあることをあなたの質問を取る:あなたはどのように検出条件が適切なが存在変換を行い、その際に、むしろ論理的な条件は何よりも、です。探査、特にグラフィカルデータ探査を使用してデータ分析をブックエンド処理することは、常に素晴らしいことです。(さまざまなテストを実行できますが、ここではグラフィカルEDAに焦点を当てます。)

カーネル密度プロットは、各変数の単変量分布の初期概要について、ヒストグラムよりも優れています。複数の変数がある場合、散布図行列は便利です。Lowessも最初は常にお勧めです。これにより、関係がほぼ線形かどうかをすばやく簡単に確認できます。ジョンフォックスの車のパッケージは、これらを便利に組み合わせています。

library(car)
scatterplot.matrix(data)

変数が列であることを確認してください。多くの変数がある場合、個々のプロットは小さくなります。プロットウィンドウを最大化し、散布図は、個別に調べたいプロットを選択して単一のプロットを作成するのに十分な大きさである必要があります。例えば、

windows()
plot(density(X[,3]))
rug(x[,3])
windows()
plot(x[,3], y)
lines(lowess(y~X[,3]))

重回帰モデルをあてはめた後も、単純な線形回帰と同様に、データをプロットして確認する必要があります。残差のQQプロットは必要なだけであり、以前と同様の手順に従って、予測子に対して残差の散布図行列を作成できます。

windows()
qq.plot(model$residuals)
windows()
scatterplot.matrix(cbind(model$residuals,X))

疑わしいものがある場合は、個別にプロットabline(h=0)し、視覚的なガイドとしてを追加します。相互作用がある場合は、X [、1] * X [、2]変数を作成し、それに対して残差を調べることができます。同様に、残差vs. X [、3] ^ 2などの散布図を作成できます。残差vs. x以外の他のタイプのプロットも同様に行うことができます。これらはすべて、プロットされていない他のx次元を無視していることに注意してください。データがグループ化されている場合(つまり、実験から)、マージナルプロットの代わりに/の代わりに部分プロットを作成できます。

お役に立てば幸いです。


2
より直接的なアプローチをお勧めします。(1)線形性を仮定せず、(2)すべての変換を同時に推定するために、回帰スプラインを使用して予測子の効果をモデル化します。これは二次回帰に似ています-すべての予測子に二乗項を追加します。たとえば、制限された3次スプラインでは、線形に動作することがわかっていない各予測子のモデルに1つ以上の非線形基底関数を追加します。
フランクハレル

@フランク私はしばしば制限付きの3次スプラインが好きです。唯一の欠点は解釈の1つです。これは少しトリッキーであり、多くの場合、クライアントをオフにします。多項式の項の追加(
中央揃え

ご協力ありがとうございます。あなたは現在私に多くの信用を与えていると思います。私の質問は実際には、変換がいつ適用可能か、または適用可能かを知るために、個々の予測子で何を探すかを中心にしています。たとえば、3つの予測子を持つ厳密に加法的なモデルがある場合、適切な変換を決定するにはどうすればよいですか?複数の予測変数の場合、通常、単純な線形回帰で求めているのと同じ原則を目指していますか?(すなわち、好ましい残差対予測プロットおよび残差のqqplot)。
マット

1
ピーター回帰スプラインは、2次式ほど複雑ではありません。とにかく、age ^ 2がモデルにある場合、年齢の係数を解釈する方法を知っているのは誰ですか?また、センタリングが役立つ場所はわかりません。スプラインフィットをグラフで解釈します。マット変換はほとんど常に必要です。これは、非線形効果に適合するのに十分なパラメーターを推定するためのサンプルサイズの妥当性の問題にすぎません。回帰スプラインは変換を直接推定し、「データの見た目」にペナルティを課される適切な信頼区間を導きます。残差には間接的なアプローチが含まれます。
フランクハレル

申し訳ありませんが、まだここに投稿のコツをつかんでいます。許してください。私の最後のコメントを詳しく説明します:私がテキストで行った最近の例では、結果のモデルy〜x1 + log(x2)があり、変換に関する唯一の注意は、「x2が対数変換に適していることは明らかでした。 」いつ変換が適用されるかについての私の感覚を改善しようとしています。単一予測子の場合と同様に、y〜x_iプロットを確認して続行するだけで十分ですか?他に何を考慮すべきですか?
マット
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.