【问题标题】:Convert a vector to density vector in R将向量转换为 R 中的密度向量
【发布时间】:2019-02-19 21:31:45
【问题描述】:

我有一个向量

v = [..., -10, -10, -10, ..., 1, 2, 5, 6, 7, 9, ...]

geom_density 以平滑的方式绘制该向量的直方图,就像密度函数一样!

如何使用auc、曲线下面积、库函数MESS 来计算给定区间内此类向量的密度图的曲线下面积,比如(-1, 3)

【问题讨论】:

    标签: r probability-density auc


    【解决方案1】:

    “geom_density 以平滑的方式绘制该向量的直方图,就像密度函数一样!” 好吧,那是因为geom_density 执行了kernel density estimation!所以它不是“像一个密度函数”,它一个密度函数。

    geom_density 的底层实际上是stats::density 执行密度估计。给出核密度估计,使得它们定义了曲线下单位面积的适当概率密度函数。

    我们可以确认

    x <- rnorm(100)
    dens <- density(x)
    df <- data.frame(x = dens$x, y = dens$y)
    sum(df$y) * diff(df$x)[1]
    #[1] 1.000952
    

    足够接近。

    通过对df 中的相应值求和,可以直接在特定范围内积分密度函数;由于您不提供示例数据,因此我将其留给您。

    【讨论】:

    • 谢谢 :D 我同时明白了。是痴迷的人让世界变得有趣。干杯
    猜你喜欢
    • 2017-05-10
    • 1970-01-01
    • 2018-01-12
    • 2018-09-06
    • 1970-01-01
    • 2021-06-02
    • 1970-01-01
    • 2017-07-29
    • 1970-01-01
    相关资源
    最近更新 更多