如何使用 R 查找多变量数据的分位数?

机器算法验证 r 多元分析 分位数
2022-03-29 22:17:51

单个变量的分位数在 R 中很容易实现。但是,对多变量数据进行分位数并不是一件容易的事。有几篇论文被提议对多元数据进行分位数,例如 Chaudhuri, P (1996), On a geometry notion of quantiles for multivariate data , Journal of the American Statistical Association 91, 862-872。现有的方法不容易实现。是否有任何 R 包可以对多变量数据进行分位数?提前谢谢了

3个回答

我会在这里尝试(mvnormtest,mvoutlier,mvtnorm): http ://cran.r-project.org/web/views/Multivariate.html

你为什么不试试我的 cepp 包。它可以为您计算 PC 的分位数!

http://cran.r-project.org/web/packages/cepp/index.html

你需要这个功能evaluator在这个包中。它有两个参数,对应于数据中的行数和列数。它返回一个可以优化以获得空间分位数的函数。

有关最小示例,请参阅包文档中的此片段。

x <- rnorm(500)
dim(x) <- c(250,2)
ev <- evaluator(250,2)
##The Spatial Median
trust(ev, parinit=c(median(x[1,]), median(x[2,])), u=c(0,0),
       rinit=0.5, rmax=2e5, samp = x)
##Quantile for vector (0.2,0.3)
trust(ev, parinit=c(median(x[1,]), median(x[2,])), u=c(0.2,0.3),
       rinit=0.5, rmax=2e5, samp = x)

您需要计算联合分布 f(x1,x2,...,xn) 的 CDF。CDF 将为您提供您寻求的分位数。