No.14103 平均値が正規分布する正規分布  【西野】 2011/01/04(Tue) 17:01

mu 〜 N(m0, s0)
X 〜 N(mu, S1)

のように,平均値が正規分布するような入れ子になった確率変数Xの分布を
求めるにはどのようにすればよいでしょうか。

No.14104 Re: 平均値が正規分布する正規分布  【青木繁伸】 2011/01/04(Tue) 21:43

シミュレーションしてみれば,X の平均値は mu0,分散は s0^2+s1^2 の正規分布になるのかな?
> sim <- function(mu0, s0, s1, n=1000000)
+ {
+ x <- numeric(n)
+ for (i in 1:n) {
+ x[i] <- rnorm(1, mean=rnorm(1, mean=mu0, sd=s0), sd=s1)
+ }
+ cat("mean(x) = ", mean(x), "\n")
+ cat("mean1 = ", mu0, "\n")
+ cat("sd(x) = ", sd <- sd(x), "\n")
+ cat("skew(x) = ", skew(x), "\n")
+ cat("kurt(x) = ", kurt(x), "\n")
+ cat("sd^2 =", sd^2, "\n")
+ cat("s0^2+s1^2 =", s0^2+s1^2, "\n")
+ }
> set.seed(1234567)
> sim(4.32, 1, 2)
mean(x) = 4.321087
mean1 = 4.32
sd(x) = 2.237204
skew(x) = 0.002676155
kurt(x) = -0.001985979
sd^2 = 5.005082
s0^2+s1^2 = 5
> sim(1.321, 3.243, 5,257)
mean(x) = 1.054299
mean1 = 1.321
sd(x) = 5.880414
skew(x) = -0.2805772
kurt(x) = -0.1650891
sd^2 = 34.57927
s0^2+s1^2 = 35.51705
> sim(2.345, 1.234, 5.678)
mean(x) = 2.346792
mean1 = 2.345
sd(x) = 5.817497
skew(x) = -0.001449112
kurt(x) = 0.003968626
sd^2 = 33.84327
s0^2+s1^2 = 33.76244

No.14105 Re: 平均値が正規分布する正規分布  【西野】 2011/01/04(Tue) 22:02

ありがとうございます。私もエクセルでですがやってみて似たような感じとなりました。
ただ,数式として求められないものかな,と思います。

No.14110 Re: 平均値が正規分布する正規分布  【のね】 2011/01/05(Wed) 22:09

これは,(x, mu) の2次元密度関数が,2つのガウス関数の積

  ρ(x,mu) = exp(-(x-mu)^2/2/s1^2)*exp(-(mu-m0)^2/2/s0^2)

で表される(係数は略してます)ことから,ρ(x,mu) を mu について -無限大 から +無限大まで積分すれば出てきます。

積分はちょっとだけ面倒ですが。

No.14112 Re: 平均値が正規分布する正規分布  【西野】 2011/01/06(Thu) 01:08

ありがとうございました。頑張ってやってみます。

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