我有一个向量,想要对每个分位数之间的值进行求和。例如:
v1 <- seq(0,1, 0.1)
q_v1 <- quantile(v1)
我可以这样做:v1 %>% subset(v1<q_v1["25%"]) %>% sum()
但是在R中是否有一行代码可以实现部分求和呢?
我有一个向量,想要对每个分位数之间的值进行求和。例如:
v1 <- seq(0,1, 0.1)
q_v1 <- quantile(v1)
我可以这样做:v1 %>% subset(v1<q_v1["25%"]) %>% sum()
但是在R中是否有一行代码可以实现部分求和呢?
cut
函数,使用指定为“q_v1”的断点作为在tapply
中的分组变量,然后得到sum
。tapply(v1, cut(v1, breaks=q_v1), FUN=sum)
# (0,0.25] (0.25,0.5] (0.5,0.75] (0.75,1]
# 0.3 1.2 1.3 2.7