R 分位数值之和

R 分位数值之和,r,quantile,R,Quantile,我有一个简单的问题。是否有一个函数为一组预定的分位数生成值的总和 假设我有一个向量示例。数据有100个值 我运行分位数(example.data,seq(0,1,by=0.1))得到 0% 10% 20% 30% 40% 50% 60% 70% 80% 90% 0.040 0.090 0.186 0.227 0.336 0.450 0.584 0.670 0.730 0.832 100% 1.000 对于每个分位数,我希望看到的不是截止点,而是每个

我有一个简单的问题。是否有一个函数为一组预定的分位数生成值的总和

假设我有一个向量示例。数据有100个值

我运行
分位数(example.data,seq(0,1,by=0.1))
得到

0%   10%   20%   30%   40%   50%   60%   70%   80%   90% 
0.040 0.090 0.186 0.227 0.336 0.450 0.584 0.670 0.730 0.832 
 100% 
1.000 
对于每个分位数,我希望看到的不是截止点,而是每个分位数中情况的值之和。分位数中是否有参数,或包含此类参数的类似函数

非常感谢……

试试:

tapply(example.data,findInterval(example.data,quantile(example.data, seq(0,1, by = 0.1))),sum)

分位数
给出的是分位数,而不是分位数内的值之和:这些是根本不同的东西

但是,您可以使用
cut
split
获得所需的结果:

q = quantile(x, seq(0, 1, by = 0.1))
cuts = cut(x, q)
values_per_quantile = split(x, cuts)
sums = sapply(values_per_quantile, sum)

有什么东西阻止你写你自己的函数?把你的数据放到
hist
?@实验者-也许不想重新发明轮子?@CarlWitthoft-我开始了,Carl,谢谢你提供帮助…得到了关于分位数函数的部分。。。我只是想知道是否可以扩展到做一个额外的把戏。。。至于你的解决方案,它是有效的,是超级的。我现在唯一需要调整的是,有些中断不是唯一的。我在这个独特的函数中加入了剪切,它是有效的,但我也在某处找到了抖动中断的建议。那怎么办?示例代码类似于
breaks=c(-Inf,分位数(a[,paste(i,1,sep=“.”),na.rm=T),Inf)breaks=breaks+seq_(breaks)*.Machine$double.eps