你可以使用以下方法在R中处理正态CDF(累积分布函数)。
方法1:计算正态CDF的概率
#calculate probability that random value is less than 1.96 in normal CDF
pnorm(1.96)
#calculate probability that random value is greater than 1.96 in normal CDF
pnorm(1.96, lower.tail=FALSE)
方法2:绘制正态CDF图
#define sequence of x-values
x <- seq(-4, 4, .01)
#calculate normal CDF probabilities
prob <- pnorm(x)
#plot normal CDF
plot(x, prob, type="l")
下面的例子展示了如何在实践中使用这些方法。
例1:计算正态CDF 概率
下面的代码显示了如何在标准正态分布中计算一个随机变量取值小于1.96的概率:
#calculate probability that random value is less than 1.96 in normal CDF
pnorm(1.96)
[1] 0.9750021
在标准正态分布中,随机变量取值小于1.96的概率是0.975。
我们也可以通过使用lower.tail参数找到随机变量取值大于 1.96 的概率:
#calculate probability that random value is greater than 1.96 in normal CDF
pnorm(1.96, lower.tail=FALSE)
[1] 0.0249979
我们还可以使用下面的语法来求一个随机变量在标准正态分布的两个值之间取值的概率:
#calculate probability that random value takes on value between -1.96 and 1.96
pnorm(1.96) - pnorm(-1.96)
[1] 0.9500042
在标准正态分布中,随机变量在-1.96和1.96之间取值的概率是0.95。
例2:绘制正态CDF图
下面的代码显示了如何绘制正态CDF:
#define sequence of x-values
x <- seq(-4, 4, .01)
#calculate normal CDF probabilities
prob <- pnorm(x)
#plot normal CDF
plot(x, prob, type="l")

x轴显示的是遵循标准正态分布的随机变量的值,y轴显示的是随机变量取值小于x轴所示值的概率。
例如,如果我们看x=1.96,那么我们会发现x小于1.96的累积概率大约是0.975:

请注意,你也可以修改正态CDF图的美学效果:
#define sequence of x-values
x <- seq(-4, 4, .01)
#calculate normal CDF probabilities
prob <- pnorm(x)
#plot normal CDF
plot(x, prob, type='l', col='blue', lwd=2, main='Normal CDF', ylab='Cumulative Prob')

其他资源
下面的教程解释了如何在R中执行其他常见的操作: