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()
    
    当我们执行以上代码时,它产生以下结果-
    normal
    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()
    
    当我们执行以上代码时,它产生以下结果 -
    normal
    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()
    
    当我们执行以上代码时,它产生以下结果-
    normal
    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()
    
    当我们执行以上代码时,它产生以下结果-
    normal