[英]confusion on 2 dimension kernel density estimation in R
内核密度估计器用于估计特定的概率密度函数(请参阅mvstat.net和sckit-learn文档以获取参考)
我的困惑是kde2d()
到底是做什么的? 在下面的示例中,是否估计两个随机变量f(a,b)的联合分布概率密度函数? 颜色是什么意思?
这是我参考的代码示例。
b <- log10(rgamma(1000, 6, 3))
a <- log10((rweibull(1000, 8, 2)))
density <- kde2d(a, b, n=100)
colour_flow <- colorRampPalette(c('white', 'blue', 'yellow', 'red', 'darkred'))
filled.contour(density, color.palette=colour_flow)
什么是核密度估计器? 从本质上讲,它适合数据的每个点(法线密度的中心就是该点)上的一条法线密度曲线,然后将所有法线密度加到一个核密度估计器上。
为了便于说明,我将从您的链接之一添加一维内核密度估计器的图像。
二维核密度呢?
# library(MASS)
b <- log10(rgamma(1000, 6, 3))
a <- log10((rweibull(1000, 8, 2)))
# a and b contain 1000 values each.
density <- kde2d(a,b,n=100)
该函数创建一个从min(a)
到max(a)
以及从min(b)
到max(b)
。 相反,在装修上的每个值一个很小的1D正常密度的a
或b
, kde2d
现在套在网格中的每一点微小的2D正常密度。 就像在一维情况下的内核密度一样,它然后将所有密度值相加。
颜色是什么意思? 正如@cel在评论中指出的那样:估计概率取决于两个变量,所以我们现在有三个轴( a
, b
和estimated probability
)。 可视化3轴的一种方法是使用等概率线 。 这听起来很花哨,但它与我们从天气预报中获得的高/低压图像基本相同。
您正在使用
filled.contour(density,
color.palette = colorRampPalette(c('white', 'blue', 'yellow', 'red', 'darkred')))))
因此,从低到高,该地块将被着色white
, blue
, yellow
, red
,并最终darkred
的估计概率最高值。 结果如下图:
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.