Один способ немного упростить вещи с помощью seq
с использованием by=
и length.out=
.
Тогда мы можем использовать merge
, чтобы объединить результаты обратно в df2
. Это должен быть data.frame
с именами для объединения, поэтому я изменил ваш cbind
на data.frame
.
Depth <- seq(0, 1500, by = 1)
Temp <- rev(seq(1, 10, by = 0.006))
df2 <- data.frame(Depth, Temp)
D0 <- 0
days <- 107
r <- 40
Result <- data.frame(Day = 0:days,
Depth =seq(from = D0, by= r ,length.out = days + 1))
Result <- merge(Result,df2,all.x=TRUE)
Result
# Depth Day Temp
#1 0 0 10.00
#2 40 1 9.76
#3 80 2 9.52
#4 120 3 9.28
#5 160 4 9.04
#...
Используя all.x=TRUE
, мы получим NA
, если в этой глубине нет значения в df2
.