回帰モデルの係数の標準誤差を参照するにはどうすればよいですか?[閉まっている]


8
            Estimate Std. Error t value Pr(>|t|)    
(Intercept)  10.2758     0.5185  19.817  < 2e-16 ***
rprice2      -1.8581     0.5139  -3.616 0.000696 ***

標準を使用したいと思います。他の計算を行うためのrprice2のエラー。モデル内のオブジェクトを参照することはわかっていますが、model $ objectという構文を使用していますが、stdエラーを参照するための構文は何ですか?


これはどのようなモデルオブジェクトですか?モデルオブジェクト(modと呼ぶ)がlmまたはglmの場合、summary(mod)$ coef [、2]を使用して標準エラーを抽出できます
マクロ

これはlmモデルです。コメントを使用して、次のコードでt統計を計算しようとしています:tstat <-abs(model coef [2,2])...これは機能しているようです、しかし私はtstatの出力をどのように解釈するかわかりません:(Intercept)rprice2 19.99568 3.61563coef/summary(model)
Aaron

1
コマンドsummary()を使用して、出力の係数属性(2x4配列)を抽出できることに注意してくださいcoef()。の係数の推定標準誤差だけが必要な場合はrprice2、たとえばを使用しますcoef(summary(mod))[2,2]。対応するt統計が必要な場合は、を使用しますcoef(summary(mod))[2,3]
ゲスト

回答:


9

通常vcov、完全なパラメーターの共分散行列を提供する関数が必要です。summaryあなたが報告した定期的な漸近標準エラーを取得するには

se <- sqrt(diag(vcov(model)))

ところで、の非対角線がvcov(model)相互作用項にわずかな影響を与えるようにしたいでしょう:Bramborらを参照してください(2006)

さまざまなタイプの違反に「ロバスト」なものなど、さまざまなタイプの標準エラーの構築に特化したサンドイッチのようなパッケージにも注意してください。


4

object $ model構文を使用しながら、他の計算を実行せずに抽出するには:

summary(model)$coefficients["rprice2","Std. Error"]

3

線形回帰の結果を含む行列を取得するには:

> coef(summary(f))

マトリックスから特定の値を抽出するには:

> coef(summary(f))["rprice2","Std. Error"]
[1] 0.5139 

1

私が理解しているように、あなたはRでこれをしたいです:

f <- lm(speed~dist, data=cars)
coef(f)
confint(f)
sd = sqrt(diag(vcov(f)))
cbind("2.5 %"=-sd*1.96+coef(f),"97.5 %"=sd*1.96+coef(f))

与える:

> coef(f)
(Intercept)        dist 
  8.2839056   0.1655676 
> confint(f)
                2.5 %     97.5 %
(Intercept) 6.5258378 10.0419735
dist        0.1303926  0.2007426
> cbind("2.5 %"=-sd*1.96+coef(f),"97.5 %"=sd*1.96+coef(f))
                2.5 %    97.5 %
(Intercept) 6.5701120 9.9976992
dist        0.1312784 0.1998568

申し訳ありませんが、vcov私の答えを書く前に、コードの真ん中にある独自のアプリケーションを見つけられませんでした。
2012

@ConjugatePrior:それは大丈夫です。明らかに、私の答えは少し不明瞭でした。件名に関するあなたのコメントは、答えにより多くの体を追加しました:-)
Max Gordon
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.