当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


R kde2d 二维核密度估计


R语言 kde2d 位于 MASS 包(package)。

说明

使用 axis-aligned 二元正态核进行二维核密度估计,在方形网格上进行评估。

用法

kde2d(x, y, h, n = 25, lims = c(range(x), range(y)))

参数

x

数据的 x 坐标

y

数据的 y 坐标

h

x 和 y 方向的带宽向量。默认为正常参考带宽(请参阅bandwidth.nrd)。将采用标量值应用于两个方向。

n

每个方向上的网格点数。可以是标量或长度为 2 的整数向量。

lims

网格覆盖的矩形的范围为 c(xl, xu, yl, yu)

三个组件的列表。

x , y

网格点的 x 和 y 坐标,长度为 n 的向量。

z

估计密度的 n[1] by n[2] 矩阵:行对应于 x 的值,列对应于 y 的值。

例子

attach(geyser)
plot(duration, waiting, xlim = c(0.5,6), ylim = c(40,100))
f1 <- kde2d(duration, waiting, n = 50, lims = c(0.5, 6, 40, 100))
image(f1, zlim = c(0, 0.05))
f2 <- kde2d(duration, waiting, n = 50, lims = c(0.5, 6, 40, 100),
            h = c(width.SJ(duration), width.SJ(waiting)) )
image(f2, zlim = c(0, 0.05))
persp(f2, phi = 30, theta = 20, d = 5)

plot(duration[-272], duration[-1], xlim = c(0.5, 6),
     ylim = c(1, 6),xlab = "previous duration", ylab = "duration")
f1 <- kde2d(duration[-272], duration[-1],
            h = rep(1.5, 2), n = 50, lims = c(0.5, 6, 0.5, 6))
contour(f1, xlab = "previous duration",
        ylab = "duration", levels  =  c(0.05, 0.1, 0.2, 0.4) )
f1 <- kde2d(duration[-272], duration[-1],
            h = rep(0.6, 2), n = 50, lims = c(0.5, 6, 0.5, 6))
contour(f1, xlab = "previous duration",
        ylab = "duration", levels  =  c(0.05, 0.1, 0.2, 0.4) )
f1 <- kde2d(duration[-272], duration[-1],
            h = rep(0.4, 2), n = 50, lims = c(0.5, 6, 0.5, 6))
contour(f1, xlab = "previous duration",
        ylab = "duration", levels  =  c(0.05, 0.1, 0.2, 0.4) )
detach("geyser")

参考

Venables, W. N. and Ripley, B. D. (2002) Modern Applied Statistics with S. Fourth edition. Springer.

相关用法


注:本文由纯净天空筛选整理自R-devel大神的英文原创作品 Two-Dimensional Kernel Density Estimation。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。