gpt4 book ai didi

r - 正态分布 `N(mu, 1)>1.96`

转载 作者:行者123 更新时间:2023-12-05 00:51:44 28 4
gpt4 key购买 nike

我尝试编写 R 代码来查找 mu s.t. 的值。正态分布满足概率 P(N(mu, 1)>1.96)=0.95 (即 P(Z>1.96)=0.95 其中 Z~ N(mu, 1)mu 是我想要得到的)。有没有解决分布参数的代码?看来这将是一个关于 mu 的积​​分方程,使得

int_{1.96}^{\infty} 1/\sqrt{2\pi}\exp(-(x-mu)^2/2)dx=0.95

我们可以从 dnorm(x, mean, sd)rnorm(n, mean, sd)。但是我们需要先取 meansd 的值。

最佳答案

使用 uniroot 找到概率等于 0.95 的点。函数 f 是一种写法。区间的终点是任意的,之所以选择是因为我没想到解会离原点很远。
注意参数 lower.tail 设置为 FALSE。

f <- function(x) {
pnorm(1.96, mean = x, sd = 1, lower.tail = FALSE) - 0.95
}
uniroot(f, c(-5, 5))
#> $root
#> [1] 3.604879
#>
#> $f.root
#> [1] 2.594975e-06
#>
#> $iter
#> [1] 12
#>
#> $init.it
#> [1] NA
#>
#> $estim.prec
#> [1] 6.103516e-05

mu <- uniroot(f, c(-5, 5))$root
mu
#> [1] 3.604879

pnorm(1.96, mu, 1)
#> [1] 0.04999741
curve(pnorm(x, mu, 1), from = -5, to = 8)
abline(h = 0.95, lty = "dashed")
abline(v = 1.96, lty = "dashed")

reprex package 创建于 2022-02-28 (v2.0.1)

关于r - 正态分布 `N(mu, 1)>1.96`,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71300428/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com