从密度对象中提取概率

时间:2014-06-23 02:26:47

标签: r

我目前正在为我正在进行的生态项目构建密度对象。 density中的R函数非常适合将密度函数拟合到我的数据中。

我如何使用density函数的示例如下所示:

dens.iris <- density(iris$Sepal.Length, bw = "bcv")

这非常有效。但是,predict函数似乎不适用于density个对象。有没有人知道如何提取特定点的密度值(例如在iris数据集中,提取Sepal.Length为6.432)?我必须使用biased cross validation技术。

1 个答案:

答案 0 :(得分:7)

您可以使用approxfun函数在密度结果给出的点之间线性插值点。因此你可以使用

diris <- with(dens.iris, approxfun(x, y, rule=1))
diris(6.432)
# [1] 0.349344

curve(diris(x), from=4.0, to=7.9)

enter image description here

当然,您必须记住密度曲线的值与概率不同。与任何连续分布一样,萼片长度恰好为6.432的概率为0。