简化 Normals cumulatives 函数的划分
Simplify the division of Normals cumulatives functions
我正在努力研究如何简化 R
中两个正态概率函数的商。实际上,我正在计算条件偏斜-正态密度,我在这两个函数之间进行了划分:
pnorm(alpha0+t(alpha2)%*%chol2inv(chol(omega2))%*%t(y2-xi2.1))/pnorm(tau2.1)
其中 alpha0+t(alpha2)%*%chol2inv(chol(omega2))%*%t(y2-xi2.1)
和 tau2.1
产生实数。例如,有时我有 pnorm(-50)/pnorm(-40)
,例如不一致 0/0
。但这些值不为零,R
只是近似值。我尝试使用 erf
函数,但我遇到了同样的问题 (0/0)
。
关于如何解决这个问题的任何提示?
pnorm
有一个 log
参数,这使得它成为 return log(p)。将方程更改为 exp(log(p1) - log(p2)):
exp(pnorm(-50, log = TRUE) - pnorm(-40, log = TRUE))
#[1] 2.95577e-196
我正在努力研究如何简化 R
中两个正态概率函数的商。实际上,我正在计算条件偏斜-正态密度,我在这两个函数之间进行了划分:
pnorm(alpha0+t(alpha2)%*%chol2inv(chol(omega2))%*%t(y2-xi2.1))/pnorm(tau2.1)
其中 alpha0+t(alpha2)%*%chol2inv(chol(omega2))%*%t(y2-xi2.1)
和 tau2.1
产生实数。例如,有时我有 pnorm(-50)/pnorm(-40)
,例如不一致 0/0
。但这些值不为零,R
只是近似值。我尝试使用 erf
函数,但我遇到了同样的问题 (0/0)
。
关于如何解决这个问题的任何提示?
pnorm
有一个 log
参数,这使得它成为 return log(p)。将方程更改为 exp(log(p1) - log(p2)):
exp(pnorm(-50, log = TRUE) - pnorm(-40, log = TRUE))
#[1] 2.95577e-196