いくつかの条件でテーブルをサブセット化する必要があります。
df <- data.frame(id=c("A","A","B","B","B","C"), seq=c(1,2,1,2,3,1), date=as.Date(c("2005-10-01", "2008-12-01","2001-03-05","2004-05-09","2008-10-15","2010-02-27")), value=c(20,12,80,55,77,57))
id | seq | date | value
--------------------------------
A | 1 | 2005-10-01 | 20
A | 2 | 2008-12-01 | 12
B | 1 | 2001-03-05 | 80
B | 2 | 2004-05-09 | 55
B | 3 | 2008-10-15 | 77
C | 1 | 2010-02-27 | 57
各 ID に対して正確に 1 つの値を返すメソッドが必要です。具体的には、指定された日付以下の日付を持つ最高のシーケンスを持つ値。sayを指定すると、次のように返されます。2004-07-01
id | value
--------------
A | 20
B | 55
C | 57
(日付が最初の日付より前の特別なケースでは、何も返さずに seq=1 を返す必要があることに注意してください)
これは可能ですか?一気に?