使用 R 找到具有正态概率的标准差
Find the standard deviation with normal probabilities using R
假设有一个变量 A 具有正态分布 N(μ,σ).
我有两个概率P(A>a)
和P(A<b)
,其中a<b
,给定的概率用%表示。(作为例子)
根据这些信息,R 能求出标准差吗?我不知道该使用哪些命令? qnorm, dnorm,.. 这样我就可以得到标准差了。
我试图做的是,知道 a = 100, b = 200 , P(A>a)
= 5% 和 P(A<b)
=15%:
考虑μ = 0, σ = 1使用标准化正态分布(但我不知道如何把它放在R中,所以我可以得到我想要的)
看到正态分布的概率table,计算Z ...,但是没有成功
有没有一种方法 R 可以只用这些信息找到标准偏差?
您所说的问题是不可能的,请检查您的不等式和值是否正确。
你给出的例子 p(A > 100) = 5% 这意味着 p( A < 100 ) = 95% 这意味着 p( A < 200 ) 必须大于 95%(所有100 到 200 之间的概率加到 95%),但你也说 p( A < 200 ) = 15%。没有一组数字可以为您提供大于 95% 和等于 15% 的概率。
一旦您将问题定义修正为有效的东西,就会有几个选项。使用 Ryacas 可以直接求解(2 个方程和 2 个未知数),但由于这是基于法线的积分,我不知道它是否可行。
另一种选择是使用 optim
或类似的程序来找到(近似)解决方案。创建一个 objective 函数,该函数采用 2 个参数,均值和标准差,然后计算规定百分比与根据当前猜测计算的百分比之间的平方差之和。 objective 函数在 "correct" 均值和标准差处为 0,在其他任何地方均为正。然后把这个函数传给optim
求最小值。
假设有一个变量 A 具有正态分布 N(μ,σ).
我有两个概率P(A>a)
和P(A<b)
,其中a<b
,给定的概率用%表示。(作为例子)
根据这些信息,R 能求出标准差吗?我不知道该使用哪些命令? qnorm, dnorm,.. 这样我就可以得到标准差了。
我试图做的是,知道 a = 100, b = 200 , P(A>a)
= 5% 和 P(A<b)
=15%:
考虑μ = 0, σ = 1使用标准化正态分布(但我不知道如何把它放在R中,所以我可以得到我想要的)
看到正态分布的概率table,计算Z ...,但是没有成功
有没有一种方法 R 可以只用这些信息找到标准偏差?
您所说的问题是不可能的,请检查您的不等式和值是否正确。
你给出的例子 p(A > 100) = 5% 这意味着 p( A < 100 ) = 95% 这意味着 p( A < 200 ) 必须大于 95%(所有100 到 200 之间的概率加到 95%),但你也说 p( A < 200 ) = 15%。没有一组数字可以为您提供大于 95% 和等于 15% 的概率。
一旦您将问题定义修正为有效的东西,就会有几个选项。使用 Ryacas 可以直接求解(2 个方程和 2 个未知数),但由于这是基于法线的积分,我不知道它是否可行。
另一种选择是使用 optim
或类似的程序来找到(近似)解决方案。创建一个 objective 函数,该函数采用 2 个参数,均值和标准差,然后计算规定百分比与根据当前猜测计算的百分比之间的平方差之和。 objective 函数在 "correct" 均值和标准差处为 0,在其他任何地方均为正。然后把这个函数传给optim
求最小值。