R语言 正态分布

R语言 正态分布

在从独立来源收集的随机数据中,通常观察到数据的分布是正态的。这意味着,在将变量的值绘制在水平轴上,值的计数绘制在垂直轴上的图表中,我们得到一个钟形曲线。曲线的中心代表数据集的平均值。在图表中,百分之五十的值位于平均值的左侧,另外百分之五十的值位于图表的右侧。这在统计学中被称为正态分布。

R有四个内置的函数用于生成正态分布。它们的描述如下。

dnorm(x, mean, sd)
pnorm(x, mean, sd)
qnorm(p, mean, sd)
rnorm(n, mean, sd)

以下是上述函数中使用的参数的描述: - x 是一个数字向量。 - p 是一个概率向量。 - n 是观测值的数量(样本大小)。 - mean 是样本数据的均值。默认值为零。 - sd 是标准差。默认值为1。

dnorm()

该函数给出了给定均值和标准差的每个点的概率分布的高度。

# Create a sequence of numbers between -10 and 10 incrementing by 0.1.
x <- seq(-10, 10, by = .1)

# Choose the mean as 2.5 and standard deviation as 0.5.
y <- dnorm(x, mean = 2.5, sd = 0.5)

# Give the chart file a name.
png(file = "dnorm.png")

plot(x,y)

# Save the file.
dev.off()

当我们执行上述代码时,会产生以下结果−

R语言 正态分布

pnorm()

该函数给出了正态分布随机数小于给定数字值的概率。它也被称为“累积分布函数”。

# Create a sequence of numbers between -10 and 10 incrementing by 0.2.
x <- seq(-10,10,by = .2)

# Choose the mean as 2.5 and standard deviation as 2. 
y <- pnorm(x, mean = 2.5, sd = 2)

# Give the chart file a name.
png(file = "pnorm.png")

# Plot the graph.
plot(x,y)

# Save the file.
dev.off()

当我们执行上面的代码时,会产生以下结果-

R语言 正态分布

qnorm()

这个函数接受一个概率值,并给出一个累积值与该概率值相匹配的数字。

# Create a sequence of probability values incrementing by 0.02.
x <- seq(0, 1, by = 0.02)

# Choose the mean as 2 and standard deviation as 3.
y <- qnorm(x, mean = 2, sd = 1)

# Give the chart file a name.
png(file = "qnorm.png")

# Plot the graph.
plot(x,y)

# Save the file.
dev.off()

当我们执行上述代码时,会产生以下结果 –

R语言 正态分布

rnorm()

该函数用于生成服从正态分布的随机数。它以样本大小作为输入,并生成相应数量的随机数。我们绘制直方图来展示生成数的分布情况。

# Create a sample of 50 numbers which are normally distributed.
y <- rnorm(50)

# Give the chart file a name.
png(file = "rnorm.png")

# Plot the histogram for this sample.
hist(y, main = "Normal DIstribution")

# Save the file.
dev.off()

当我们执行上述代码时,会产生以下结果 −
R语言 正态分布

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程