R 使用索引的倍数来保留或替换向量中的值
“平均值”是1x756数字向量 这是我想写的序列(数字向量):R 使用索引的倍数来保留或替换向量中的值,r,vector,sequence,R,Vector,Sequence,“平均值”是1x756数字向量 这是我想写的序列(数字向量): L <- c(rep(0, 251), Mean[252], rep(0, 251), Mean[252*2], rep(0, 251), Mean[252*3]) L在R中,我们可以分成几个组,然后进行连接 i1 <- rep(1:3, each = 252) i2 <- rep(1:3, each = 251) unlist(Map(c, split(rep(0, 753), i
L <- c(rep(0, 251), Mean[252],
rep(0, 251), Mean[252*2],
rep(0, 251), Mean[252*3])
L在R
中,我们可以分成几个组,然后进行连接
i1 <- rep(1:3, each = 252)
i2 <- rep(1:3, each = 251)
unlist(Map(c, split(rep(0, 753), i2), split(Mean * i1, i1)), use.names = FALSE)
i1在向量序列上使用%%
(模),替换的(第一个)索引作为除数。替换除法结果为零*的值
Mean[seq_along(Mean) %% 252 != 0] <- 0
平均值[沿(平均值)%%252!=0]
Mean[seq_along(Mean) %% 252 != 0] <- 0
set.seed(2)
x <- sample(12)
x[seq_along(x) %% (length(x) / 3) != 0] <- 0
x
# [1] 0 0 0 2 0 0 0 5 0 0 0 10