【问题标题】:represent the frequency line in a histagram using freq=TRUE使用 freq=TRUE 表示直方图中的频率线
【发布时间】:2014-10-02 17:54:43
【问题描述】:

我在 R 中有以下代码:

w=rbeta(365,1,3,ncp=0)
hist(10*w,breaks=25,freq=TRUE,xlim=c(0,10), ylim=c(0,60))
h=seq(0,1,0.05)

到目前为止一切顺利。 我现在要做的是添加一条代表 beta 函数的行,该函数具有参数 alpha=1, beta=3(如我使用的 rbeta 函数),它考虑了频率而不是密度。 rbeta 中的元素总数为 365(一年中的天数),我将 w 乘以 10 的原因是因为我正在研究的变量可以每天假定值 [0,10],遵循 beta 分布如上所述。

我必须做什么来代表这条线?

总之,直方图是基于模拟值的,我想展示理论 beta 函数与模拟相比的表现。

【问题讨论】:

  • dbeta 是 beta 发行版的 pdf。
  • 我知道,但是当我将它添加到图中时,它的初始值等于3,而freq=TRUE的直方图从45开始,而freq=FALSE的直方图开始从 0.25

标签: r simulation beta-distribution


【解决方案1】:

如果您希望它们匹配,您需要匹配直方图和密度图曲线下的区域。这应该使它们处于相同的规模。一种方法是

set.seed(15) #to make it reproducible
w <- rbeta(365, 1, 3, ncp=0)
hh <- hist(w*10, breaks=25, freq=TRUE, xlim=c(0,10), ylim=c(0,60))
ss <- sum(diff(hh$breaks)*hh$counts)
curve(dbeta(x/10, 1, 3, ncp=0)*ss/10, add=T)

这给了

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-12-23
    • 1970-01-01
    • 1970-01-01
    • 2015-07-18
    • 2013-09-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多