我们可以用
match
加入
time.new
和
time.old
并得到相应的
y
价值观。
set.seed(123)
time.new <- c(2, 3, 4, 3, 4, 5, 4, 5, 6)
old <- data.frame(time.old=1:10, y=rnorm(10))
cbind(time = time.new, y = old$y[match(time.new, old$time.old)])
# time y
# [1,] 2 -0.2302
# [2,] 3 1.5587
# [3,] 4 0.0705
# [4,] 3 1.5587
# [5,] 4 0.0705
# [6,] 5 0.1293
# [7,] 4 0.0705
# [8,] 5 0.1293
# [9,] 6 1.7151