r - R中for循环中的2个变量

标签 r for-loop

我想在 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 循环。

关于r - R中for循环中的2个变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34614526/

相关文章:

JavaScript Prime 检查器不工作

Javascript - 如何通过数组所有元素的乘法返回正确的值?

Java for循环生成MAC地址

r - 更改 ggplot2 中刻度的位置(在绘图内)

json - 如何将 JSON 格式的 aata 保存到 R 对象中

r - 在 R 中识别和标记部分重复记录

按行方式替换 NA 值

R. 将列表导出到 Excel 中的单个工作表

Python 相当于在 Matlab 中分配给一个数组(在 for 循环内)

python - 如何打印(加入)2 个循环的结果