使用 R 计算 3d 核密度估计中给定范围的总和概率

问题描述

我尝试将 this example 扩展到 xyz 空间上的 3d 核密度估计。我的目的是计算3d空间下一定范围数据的概率。 我想要的数据范围是 x 17.95 & y14.95 & z37.95

下面的代码是我的初步尝试

library(ks)
##dummy data set##
set.seed(1)
n <- 100
x <- rnorm(n,mean=18,sd=0.2)
y <- rnorm(n,mean=15,sd=0.2)
z <- rnorm(n,mean=38,sd=0.2)
xyz <- cbind(x,y,z)

## kde estimation and sum probability of xyz. It should be close to 1
f_kde <- kde(xyz)
sum(f_kde$estimate)

## compute probability of data range x < 18.05 & x>17.95 & y<15.05 & y>14.95 & z<38.05 & z>37.95 from the kde of xyz
xyz[x < 18.05 & x>17.95 & y<15.05 & y>14.95 & z<38.05 & z>37.95,.(pkde=sum(f_kde$estimate))]
pkde

问题是整个数据集的总和概率不等于1,基于sum(f_kde$estimate)。 我也不知道如何从 xyz 的整体核密度函数推导出数据范围的概率。

谁能告诉我如何实现它?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)