【问题标题】:domain using plot function in r在 r 中使用绘图函数的域
【发布时间】:2014-10-02 15:09:56
【问题描述】:

我开始说我对 R 真的很陌生,因此这可能是一个非常简单的问题。

我想使用 beta 分布进行蒙特卡罗模拟。案例是我有一个网站,一年内每天都会收到 0 到 10 个可视化,我想模拟这个。

我论文的第一步是制作一个图表来显示 beta 分布的形状。

这样做,我愿意

x=rbeta(365,1,4,ncp=0)
y=dbeta(x,1,4)
plot(10*x,y,type="l")

这给了我一个像这样的丑陋图表:

然后我试着做

x=rbeta(365,1,4,ncp=0)
plot(density(10*x))

在这种情况下,我得到了具有此缺陷的正确图表:它在 0 侧超出了域 [0,10]:

谁能帮助我?提前感谢您的帮助!

回答部分: 通过使用 plot(density(10*x), xlim = c(0, 10)) 我获得 它再次具有域偏移量的问题,不仅如此,看起来函数是否向右移动,因为我希望给定 x1

【问题讨论】:

  • plot(density(10*x), xlim = c(0, 10))?

标签: r dns beta-distribution


【解决方案1】:

您真的只是想要一个带有参数 1、4 的 Beta 分布图吗?:

# Points over which we will evaluate Beta PDF
x <- seq(0, 1, 0.05)

# PDF values
y <- dbeta(x, 1, 4, ncp=0)

plot(x*10, y, type="l")

如果你真的想要模拟的东西,你也可以做一个这样的直方图:

hist(rbeta(2000, 1, 4, ncp=0), breaks=25)

【讨论】:

  • 朋友,你几乎解决了我所有的问题。你能告诉我如何在 y 轴上从绝对频率切换到相对频率吗?
  • 直方图? hist(..., freq=TRUE)
  • 我试过了,仍然在 y 轴上显示绝对频率的值
  • 既然我们在这里,现在很抱歉,如果我一直问,但我正在研究如何在不问的情况下解决问题。如何在直方图中插入代表条形近似值的线?
  • 您可以为此使用密度,就像您在原始问题中提出的那样:在hist() 之后执行lines(density(y, from=0, to=1))。也可以找出直方图中每个 bin 的 x-y 坐标,并对其拟合一些平滑曲线,但据我所知,这会更复杂。
猜你喜欢
  • 2014-07-10
  • 1970-01-01
  • 2014-12-06
  • 1970-01-01
  • 1970-01-01
  • 2014-11-21
  • 2019-04-28
  • 2012-07-10
  • 2013-06-20
相关资源
最近更新 更多