📜  如何在 R 中绘制对数正态分布

📅  最后修改于: 2022-05-13 01:54:39.840000             🧑  作者: Mango

如何在 R 中绘制对数正态分布

在本文中,我们将了解如何在 R 编程语言中绘制对数正态分布。对数正态分布是对数呈正态分布的随机变量的连续概率分布。在概率上,如果随机变量 X 服从对数正态分布,则 Y = ln(X) 服从正态分布。

为了绘制对数正态分布,我们需要两个函数,即dlnorm()curve()。

示例 1:

在第一个示例中,让我们使用均值 0 和标准差 1 在 0 到 25 的范围内使用曲线和 dlnorm函数绘制对数正态分布。

R
curve(dlnorm(x, meanlog=0, sdlog=1), from=0, to=25)


R
curve(dlnorm(x), from=0, to=25)


R
curve(dlnorm(x, meanlog=0, sdlog=.3),
      from=0, to=25, col='blue')
  
curve(dlnorm(x, meanlog=1, sdlog=.5),
      from=0, to=25, col='red', add=TRUE)
  
curve(dlnorm(x, meanlog=2, sdlog=1), 
      from=0, to=25, col='purple', add=TRUE)


输出:

示例 2:

我们知道默认情况下均值和标准差值分别为 0 和 1,因此我们可以在不指定 meanlog 和 sd log 参数的情况下绘制上述函数,结果将是相同的。

R

curve(dlnorm(x), from=0, to=25)

输出:

示例 3:

我们还可以绘制具有不同均值 std 的多个对数正态分布。 dev 和范围通过为每个分布指定不同的颜色,如下所示。

R

curve(dlnorm(x, meanlog=0, sdlog=.3),
      from=0, to=25, col='blue')
  
curve(dlnorm(x, meanlog=1, sdlog=.5),
      from=0, to=25, col='red', add=TRUE)
  
curve(dlnorm(x, meanlog=2, sdlog=1), 
      from=0, to=25, col='purple', add=TRUE)

输出: