No.22670 オフセット項を含む単回帰モデルのパラメタ推定  【新春】 2019/01/10(Thu) 22:28

オフセット項を含む単回帰モデルの切片の標準誤差の推定方法について,ご教示いただければ幸いです.
以下のような Rのスクリプトを実行したとき,切片の推定値と標準誤差をsummary関数で確認できますが,標準誤差(以下の例では0.1114)をどのように算出し ているのかわからず悩んでいます.適切な数式や考え方などが掲載されている資料があれば,ご紹介いただきたくお願い申し上げます.
> n <- 300
> x <- rnorm(n, mean=10, sd=1)
> e <- rnorm(n, mean=0, sd=2)
> a <- 7
> y <- a + x + e
> d <- data.frame(x,y)
> lm.out <- lm(y~1+offset(x), data=d)
> summary(lm.out)

Call:
lm(formula = y ~ 1 + offset(x), data = d)

Residuals:
Min 1Q Median 3Q Max
-6.2107 -1.2351 -0.0889 1.3389 5.1611

Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 6.9713 0.1114 62.59 <2e-16 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 1.929 on 299 degrees of freedom

> (a.hat <- mean(y) - mean(x))
[1] 6.971308
> y.hat <- a.hat + x
> (sigma.e <- sqrt(sum((y - y.hat)^2)/(n-1)))
[1] 1.929243

No.22671 Re: オフセット項を含む単回帰モデルのパラメタ推定  【新春】 2019/01/13(Sun) 16:46

質問させていただいた件,誤差伝播の法則に基づく次の計算で,summary関数で表示される結果と一致する値が得られました.
> n <- 300
> x <- rnorm(n, mean=10, sd=1)
> e <- rnorm(n, mean=0, sd=2)
> a <- 7
> y <- a + x + e
> d <- data.frame(x,y)
> lm.out <- lm(y~1+offset(x), data=d)
> summary(lm.out)

Call:
lm(formula = y ~ 1 + offset(x), data = d)

Residuals:
Min 1Q Median 3Q Max
-5.4845 -1.3463 0.0459 1.3090 4.8227

Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 7.0122 0.1123 62.42 <2e-16 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 1.946 on 299 degrees of freedom

> var.xbar <- sum((x - mean(x))^2)/(n*(n-1))
> var.ybar <- sum((y - mean(y))^2)/(n*(n-1))
> cov.xybar <- cov(x,y)/n
> (sigma.a <- sqrt(var.xbar + var.ybar - 2*cov.xybar))
[1] 0.1123454
以上,思いつきましたのでご報告いたします.
より適切な方法があれば,ご指摘いただければ幸いです.

No.22672 Re: オフセット項を含む単回帰モデルのパラメタ推定  【青木繁伸】 2019/01/13(Sun) 21:30

基本的には,lm や lm.fit など,関連するソースを読んでいけば良いと言うことになります。

ご存じとは思いますが,ソースを見るのは,コンソールに lm などと入力するだけです。

また,実際にどのように解析が進むのかをみるのは debug(lm) などとした後,lm を実行するということでよいでしょう。debug についての事前の知識は必要でしょうが。

No.22673 Re: オフセット項を含む単回帰モデルのパラメタ推定  【新春】 2019/01/14(Mon) 16:12

青木先生,

ソースコードの確認やdebugの活用など,ご指摘ありがとうございます.
丁寧にソースコードを追って,どのような計算が行われているのかを確認したいと思います.
ご助言いただけましたこと,また,このような質問の場を維持していただいていることに感謝申し上げます.

● 「統計学関連なんでもあり」の過去ログ--- 048 の目次へジャンプ
● 「統計学関連なんでもあり」の目次へジャンプ
● 直前のページへ戻る