在密度图上找到峰值

时间:2015-09-02 08:44:42

标签: r

我使用rbeta功能创建了一系列数字。

set.seed(123)
n = 100000
p1.12.2 = rbeta(n, 0.3225928, 1.2903712)
p4.7.2 = (rbeta(n, 0.3488823,  3.1399407)^2)
E2 = p4.7.2*p1.12.2

这样运行正常,但我想找到E2的模式,所以我通过获得密度图的峰值来做到这一点。

d = density(E2)
i = which.max(d$y)
M2 = d$x[i]
M2

我一直得到该模式的负值。但beta分布仅限于0-1。任何负面价值来自的想法,还是有其他方式来获得一个箱子的模式?

1 个答案:

答案 0 :(得分:2)

我认为这是一个问题"由于核密度估计如何工作。 如何使用直方图逼近峰值并指定大量中断?

h = hist(E2, breaks=500)
i = which.max(h$counts)
M2 = h$mids[i]
M2

尝试breaks的不同值。