r - 正态分布和对数正态分布的均值和标准差

标签 r statistics

下面是我的代码:

set.seed(1)


par(mfrow=c(1,2))
lognorm.gen <- function(mu,sigma){
  ns <- rnorm(1000,mu,sigma)
  ns <- exp(ns)

  hist(ns,probability = T, main = expression(paste("Sample Density Curve", mu, sigma)))
  y <- seq(0,15,length=100)
  lines(y,dlnorm(y,mu,sigma))
}

lognorm.gen(0,0.25)

我从正态生成样本,然后将它们转换为对数正态分布。首先,我在 rnorm() 中使用 musigma 作为参数,然后我应该使用 exp(mu)exp(sigma)dlnorm() 中。然而,该图显示直线和直方图偏离了很多。相反,dlnorm() 中的 musigma 可以很好地将直线拟合到直方图中。所以我想知道为什么在这种情况下我不应该使用 exp(mu)

最佳答案

请阅读?dlnorm:

 dlnorm(x, meanlog = 0, sdlog = 1, log = FALSE)
 plnorm(q, meanlog = 0, sdlog = 1, lower.tail = TRUE, log.p = FALSE)
 qlnorm(p, meanlog = 0, sdlog = 1, lower.tail = TRUE, log.p = FALSE)
 rlnorm(n, meanlog = 0, sdlog = 1)

meanlog, sdlog: mean and standard deviation of the distribution on the
      log scale with default values of ‘0’ and ‘1’ respectively.

均值和标准差以对数刻度指定。这就是为什么您仍然需要与在 rnorm 中使用的相同的 musigma,而不是 exp(mu)exp(sigma)

关于r - 正态分布和对数正态分布的均值和标准差,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39554545/

相关文章:

r - dplyr::select 函数与 MASS::select 冲突

r - 如何使用 ggplot 按降序对水平条形图进行排序?

r - 在ggplot2中的箭头中添加注释文本

r - R中二项式数据的置信区间

python - 仅将 Gamma 分布拟合到样本的子集

r - 如何拟合Skellam回归?

php - 价格过滤分组算法

r - 从服务器更改 Shiny 的输入值

r - 如何为演示教程创建演示?

java - 方差实现应用于计算标准差?