R语言之dpqr概率函数

在R中,概率函数使用第一个字母(d, p, q, r)表示所知分布的某一方面:

d表示密度函数。

p表示概率分布函数。

q为分位函数,即已知某一点x的概率值是多少,反求x

r为随机函数。可用于分布检验。

 

下面用某班级同学的身高(服从二项分布, mean = 1.65, sd = 2.32 来反应dpqr函数的不同特点。

1. dnorm()函数

该函数表示分布在某一点的概率或者概率密度。

set.seed(1)
x = seq(-10,15, length.out = 100)
y = dnorm(x, 1.65, 2.32)
plot(x, y, xlim = c(-10, 15), type = "l", col = 'red', xaxs = "i", main = "正态分布概率密度图", xlab = "身高", ylab = "概率")

R语言之dpqr概率函数

 

2. pnorm()函数

该函数也称为概率累积分布函数。x = 1.65时对应的y值表示该班级中身高小于等于1.65的概率

set.seed(1)
x = seq(-10, 15, length.out = 00)
y = pnorm(x, mean = 1.65, sd = 2.32)

plot(x, y, col = "red", type = "l", main = "概率累积分布函数", xlab = "身高", ylab = "累积概率")

R语言之dpqr概率函数

3. qnorm()函数

分位函数,以累积概率值为x轴,y值为其匹配的数字值

已知身高小于等于y 的累积概率为x = 0.78, 求y值

set.seed(1)
x = seq(0, 1, length.out = 100)
y = qnorm(x, mean = 1.65, sd = 2.32)
plot(x, y, col = "red", type = "l", main = "概率累积分位函数", ylab = "身高", xlab = "累积概率")

R语言之dpqr概率函数

4. rnorm()函数

该函数用于生成该分布的随机数,常用来进行分布检验

set.seed(1)
S = rnorm(1000)

ks.test(S, "pnorm")