インターセプトが統計パッケージで1として入力されるのはなぜですか(R、Python)


7

統計ソフトウェアを使用する場合、線形モデルを定義するときに、切片が「const」や「intercept」などではなく1として入力されるのはなぜですか。1にはどのような意味がありますか?

歴史的な理由はありますか?または、これは私が理解できない何らかの方法で論理的ですか?切片は任意の数にすることができます。

Pythonのstatsmodelsライブラリの例:

model = smf.ols('Height ~ 1', data = height_sample_data)

Rのlmerパッケージは非常によく似ています。


5
切片は係数(実際には任意の値をとることができます)ですが、モデルを近似するときに回帰プログラムに入力するのは係数ではなく、回帰方程式()で係数を乗算するものです。回帰式で切片に何を掛けますか?(あることに注意してください。)xβ0×1=β0
Glen_b -Reinstate Monica

回答:


16

数式が内部的に変換されるというマトリックス表記を検討すると、それは論理的です。行列では、非定数の予測子は(1つ以上の)列に変換され、切片は完全に1から構成される列に変換されます。

たとえば、Rでは、次のように非常に単純なOLSを記述ます。

lm(z~1+x+y)

マトリックス表記では、これはモデルに変換されます

(z1z2zn)=(1x1y11x2y21xnyn)(β0βxβz)+(ϵ1ϵ2ϵn),

そして今、あなたはがどこから来たかを見る。1


1+Rは常に切片を含めることを想定しているため、実際には省略してもかまいません。これは、

lm(z~x+y).

ただし、切片を抑制したい場合は、次のように記述します。

lm(z~x+y-1),

これは、1列のない行列に変換されます。

(z1z2zn)=(x1y1x2y2xnyn)(βxβz)+(ϵ1ϵ2ϵn),

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.