【问题标题】:How to simulate bimodal distribution?如何模拟双峰分布?
【发布时间】:2012-07-16 19:37:39
【问题描述】:

我有以下代码来生成双峰分布,但是当我绘制直方图时。我没有看到这两种模式。我想知道我的代码是否有问题。

mu1 <- log(1)   
mu2 <- log(10)
sig1 <- log(3)
sig2 <- log(3)
cpct <- 0.4   

bimodalDistFunc <- function (n,cpct, mu1, mu2, sig1, sig2) {
  y0 <- rlnorm(n,mean=mu1, sd = sig1)
  y1 <- rlnorm(n,mean=mu2, sd = sig2)

  flag <- rbinom(n,size=1,prob=cpct)
  y <- y0*(1 - flag) + y1*flag 
}

bimodalData <- bimodalDistFunc(n=100,cpct,mu1,mu2, sig1,sig2)
hist(log(bimodalData))

【问题讨论】:

    标签: r statistics probability distribution


    【解决方案1】:

    问题似乎太小了nmu1mu2 之间的差异太小,取mu1=log(1)mu2=log(50)n=10000 给出了这个:

    【讨论】:

    • 使用超过默认数量的 bin 也有帮助,例如hist(log(bimodalData), breaks=100)
    猜你喜欢
    • 2017-04-11
    • 2021-10-15
    • 1970-01-01
    • 2015-12-18
    • 1970-01-01
    • 2014-01-15
    • 2015-05-25
    • 2011-07-23
    • 2021-08-16
    相关资源
    最近更新 更多