在R中的一个for循环中以不同的速度通过两个不同的向量进行

时间:2017-09-22 19:11:23

标签: r for-loop

我有两个载体

index1 <- c(16,21,171,248,278,312)
index2 <- c(1,249)

我想要一个for循环(或其他结构),以不同的速度打印出数字。我想要的输出是

[1] 1,16
[2] 1,21
[3] 1,171
[4] 1,248
[5] 249,278
[5] 249,312

因此,只要第一个向量超过第二个向量,打印序列中的第一个数字就会变为第二个向量中超出的数字。

1 个答案:

答案 0 :(得分:3)

我们可以将findIntervalpaste

一起使用
paste(index2[findInterval(index1, index2)], index1, sep=",")
#[1] "1,16"    "1,21"    "1,171"   "1,248"   "249,278" "249,312"