次のデータフレームがあります。
id<-c(1,1,1,1,1,3,3,3,3)
period<-c("calib","calib","calib","valid","valid","calib","calib","calib","valid")
date<-c("11-11-07","11-11-07","23-11-07","12-12-08","17-12-08","11-11-07","23-11-07","23-11-07","16-01-08")
time<-c(12,13,14,11,23,15,12,18,14)
df<-data.frame(id,period,time,date)
df$date2<-as.Date(as.character(df$date), format = "%d-%m-%y")
id period time date date2
1 calib 12 11-11-07 2007-11-11
1 calib 13 11-11-07 2007-11-11
1 calib 14 23-11-07 2007-11-23
1 valid 11 12-12-08 2008-12-12
1 valid 23 17-12-08 2008-12-17
3 calib 15 11-11-07 2007-11-11
3 calib 12 23-11-07 2007-11-23
3 calib 18 23-11-07 2007-11-23
3 valid 14 16-01-08 2008-01-16
期間date
内の最後のトランザクションのをそれぞれについて抽出し、新しい列に配置する必要があります。1日に2つのトランザクションが行われた場合(同様)、最後のトランザクションはトランザクションの時間に基づいて選択する必要があります。私が探しているファイナルテーブルは次のとおりです。calib
id
date
id period time date date2 last
1 calib 12 11-11-07 2007-11-11 NA
1 calib 13 11-11-07 2007-11-11 NA
1 calib 14 23-11-07 2007-11-23 2007-11-23
1 valid 11 12-12-08 2008-12-12 NA
1 valid 23 17-12-08 2008-12-17 NA
3 calib 15 11-11-07 2007-11-11 NA
3 calib 12 23-11-07 2007-11-23 NA
3 calib 18 23-11-07 2007-11-23 2007-11-23
3 valid 14 16-01-08 2008-01-16 NA
誰かがこれを手伝ってくれませんか?!