我正在寻找一个R函数来计算向量之间的差异或向量中的最新非NA值.这是一个例子:
visit <- c(1,2,3,4)
time <- c(5,10,NA,15)
df <- data.frame(visit ,time)
Run Code Online (Sandbox Code Playgroud)
我们正在寻找自上次访问以来的时间.
使用diff,我们得到一个长度为3的向量:
diff <- diff(df$time, lag = 1, differences = 1)
5 NA NA
Run Code Online (Sandbox Code Playgroud)
想要的'diff'向量是:
5 NA 5
Run Code Online (Sandbox Code Playgroud)
理想情况下,它与原始矢量'value'的长度相同,因此可以将其添加到数据帧'df':
visit | time | diff
1 5 NA
2 10 5
3 NA NA
4 15 5
Run Code Online (Sandbox Code Playgroud)