这可能是有关R中'dnorm'函数的一些基本/基本问题。假设我通过z转换创建了一些z得分,并尝试从'dnorm'中获得总和。
data=c(232323,4444,22,2220929,22323,13)
z=(data-mean(data))/sd(data)
result=dnorm(z,0,1)
sum(result)
[1] 1.879131
如上所述,“ dnorm”的总和不是1也不是0。
那么,即使在z变换中,我也使用零均值和一个标准差。
data=c(232323,4444,22,2220929,22323,13)
z=(data-0)/1
result=dnorm(z,0,1)
sum(result)
[1] 7.998828e-38
我仍然没有得到0或1的总和。
如果我的目的是使概率总和等于我进一步使用所需的概率,那么建议使用“范数”甚至使用其他PDF函数的哪种方法?
答案 0 :(得分:4)
dnorm
返回以正态概率 density 函数评估的值。它不会不返回概率。在密度函数中求值的转换数据之和等于1或0的原因是什么?您正在创建一个随机变量,没有理由它应该完全等于零或一。
积分dnorm
产生概率。在随机变量的整个支持范围内积分dnorm
的概率为1:
integrate(dnorm, -Inf, Inf)
#1 with absolute error < 9.4e-05
实际上,integrate(dnorm, -Inf, x)
在概念上等于所有pnorm(x)
的{{1}}。
编辑:根据您的评论。
其他连续概率分布(PDF)也是如此:
x
请注意,来自integrate(dexp, 0, Inf, rate = 57)
1 with absolute error < 1.3e-05
的{{1}}个参数将传递给被积。
还请记住,泊松分布是(离散)概率分布,因此将其整合(按常规意义)是没有意义的。离散概率分布具有概率质量函数(PMF),而不具有实际返回概率的PDF。在这种情况下,它应该 sum 为1。
考虑:
...
从0到一个非常大的数字(即在泊松分布的支持下):
?integrate