将向量转换为 R 中的密度向量
Convert a vector to density vector in R
我有一个向量
v = [..., -10, -10, -10, ..., 1, 2, 5, 6, 7, 9, ...]
geom_density
以平滑的方式绘制此向量的直方图,就像密度函数一样!
如何使用 auc
、曲线下面积、库 MESS
的函数来计算给定区间内此类向量的密度图的曲线下面积,让说 (-1, 3)
?
"The geom_density plots the histogram of this vector in a smooth fashion, like a density function!"
好吧,那是因为 geom_density
执行了 kernel density estimation!所以它不是"like a density function",它是一个密度函数。
在 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
中的相应值求和,可以直接在特定范围内对密度函数进行积分;由于您不提供示例数据,因此我将其留给您。
我有一个向量
v = [..., -10, -10, -10, ..., 1, 2, 5, 6, 7, 9, ...]
geom_density
以平滑的方式绘制此向量的直方图,就像密度函数一样!
如何使用 auc
、曲线下面积、库 MESS
的函数来计算给定区间内此类向量的密度图的曲线下面积,让说 (-1, 3)
?
"The geom_density plots the histogram of this vector in a smooth fashion, like a density function!"
好吧,那是因为 geom_density
执行了 kernel density estimation!所以它不是"like a density function",它是一个密度函数。
在 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
中的相应值求和,可以直接在特定范围内对密度函数进行积分;由于您不提供示例数据,因此我将其留给您。