我想在一个for循环中引用两个向量,但是每个向量的长度都不同。
n=1:50 m=letters[1:14]
我尝试了一个循环来阅读它
for (i in c(11:22,24,25)){ cat (paste(n[i],m[i],sep='\t'),sep='\n') }
并最终得到:
11 k 12 l 13 m 14 n 15 NA 16 NA 17 NA 18 NA 19 NA 20 NA 21 NA 22 NA 24 NA 25 NA
但我想获得:
11 a 12 b 13 c ... 25 n
有没有办法有一个双变量声明?
for (i in c(11:22,24,25) and j in 1:14){ cat (paste(n[i],m[j],sep='\t'),sep='\n') }
或类似的东西来获得我想要的结果?
不,没有。但是您可以这样做:
ind_j <- c(11:22,24,25) ind_k <- 1:14 for (i in seq_along(ind_j)){ cat (paste(n[ind_j[i]],m[ind_k[i]],sep='\t'),sep='\n') }
当然,您很可能不应该for
为实际问题使用循环。