如何创建一个可以被R中的一个数字整除的索引列表



给定一个向量,x=c(……..(,我如何找到可以被一个数字整除的索引,例如5,并使用seq((函数将这些索引的值相加?我尝试过使用seq((,但它只获取可被5整除的值,而不是实际的索引。

我们可以将which%%运算符一起使用:

v <- c(1:50)
which(v%%5==0)
[1]  5 10 15 20 25 30 35 40 45 50
vec <- 1:20
(seq_along(vec)-1) %% 5 == 0
#  [1]  TRUE FALSE FALSE FALSE FALSE  TRUE FALSE FALSE FALSE FALSE  TRUE FALSE FALSE FALSE FALSE  TRUE FALSE FALSE FALSE FALSE
sum(vec[(seq_along(vec)-1) %% 5 == 0])
# [1] 34
seq(1, length(vec), by = 5)
# [1]  1  6 11 16
sum(vec[seq(1, length(vec), by = 5)])
# [1] 34

最新更新