【发布时间】:2017-11-05 19:43:21
【问题描述】:
我有一个数据框:
ID_1 <- c("A","B","C","D","A","A","B","E","D","F","H")
ID_2 <- c("G","D","I","A","J","B","K","D","A","H","A")
Value <- c(10,9,15,27,3,28,4,3,11,19,12)
DF <- as.data.frame(cbind(ID_1, ID_2, Value))
我想要一个新列,其中包含基于另一列 ('ID_2') 中相应 ID 的给定 ID ('ID_1') 的最后一个(即前一个)值 ('Value')。换句话说:预期的解决方案应该找到给定 ID ('ID_1') 的最新/最后一个 ID 条目 ('ID_2'),并在新列中提取相应的值 ('Value')。
最终的数据集应如下所示(在现有的三列中添加一列;插图):
NEW <- c(NA,NA,NA,9,27,27,28,NA,3,NA,19)
DF_NEW <- as.data.frame(cbind(ID_1, ID_2, Value, NEW))
提前感谢您的帮助!
【问题讨论】: