在 R 中调用分位数时如何指定概率值?

How can I specify probability values when invoking quantiles within apply in R?

我有一个 R 脚本,我用它来创建一个新的数据矩阵,该矩阵由来自连续数据矩阵的 bin 值组成。现在使用此命令可以正常工作:

quant.mat <- apply(input.dat,2,quantile)

但这给了我 0.25、0.5 和 0.75 的标准分位数分布。我想要的是能够任意指定不同的值(例如 0.2、0.4、0.6、0.8)。我似乎无法让它工作。

您可以将任意概率值传递给 probs 参数,例如,如果您有一个随机数据框:

input.dat
   A  B  C  D
1 78 12 43 12
2 23 12 42 13
3 14 42 11 99
4 49 94 27 72

apply(input.dat, 2, quantile, probs = c(0.2, 0.4, 0.6, 0.8))
       A    B    C    D
20% 19.4 12.0 20.6 12.6
40% 28.2 18.0 30.0 24.8
60% 43.8 36.0 39.0 60.2
80% 60.6 62.8 42.4 82.8

你可以将你喜欢的剪辑传递给分位数函数。例如:

values<-runif(100,0,1)
quantile(values, c(0.2,0.4,0.6,0.8))

它回答了你的问题吗?