No.21970 対数正規分布の期待値  【Saito】 2016/04/05(Tue) 13:11

お世話になっております。
対数正規分布の期待値が理論解とあわないのですが,どこが間違っているかご指摘頂けないでしょうか。
> ###データの生成###
> set.seed(3)
> a <- 0.2
> b <- -0.2
> id <- 100
> 
> x <- seq(1, 10, length=id)
> y <- exp(a + b*x + rnorm(id, 0, sd=4))
> 
> ###対数正規分布を仮定して回帰してみる###
> func <- function(par, x, y) {
+ a <- par[1]
+ b <- par[2]
+ sig <- par[3]
+ return(
+  -1*sum(
+      log(
+        (1/(sqrt(2*pi*sig^2)*(y)))*exp(-((a+b*x)-log(y))^2/(2*sig^2))
+         )
+        )
+      )
+ 
+ }
> res_l <- optim(func, par=c(-0.2, -0.2, 4), x=x, y=y)
> 
> ###対数正規分布なのでexp(u+s^2/2)で期待値となるはずだがならない?###
> mean(exp(res_l$par[1] + res_l$par[2]*x + res_l$par[3]^2/2))
[1] 130.4608
> mean(y)
[1] 15.99745

###普通のGLMでやっても合わない###
>  res <- glm(log(y) ~ x)
>  mean(exp(predict(res)+summary(res)$dispersion/2))
[1] 146.5174
どうぞよろしくお願いいたします。

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