> a
UID Date.of.Txn
1 1 09-11-2016
2 1 25-10-2016
3 1 30-08-2016
4 2 30-08-2016
5 2 02-06-2016
6 3 18-04-2016
7 3 31-01-2016
8 4 03-11-2015
9 4 06-08-2015
10 5 20-05-2015
11 5 08-05-2015
私が望むのは、すべての人のためのものです。UID
は、最後の2番目の日付w.r.t.を返す必要があります。列Date.of.Txn
の値に変更します。 ID = 1
ため UID = 1
とDate.of.Txn = 09-11-2016
最後の二日目を返す
09-11-2016
上TXNの最後の日のために例えば
については
は
UID = 1
とDate.of.Txn 25-10-2016
ID = 1
ため25-10-2016
上TXNの最後の日のために25-10-2016
も同様でしたは30-08-2016
と
以下に示すようにDatesorted
列の値が0
なり UID = 1
とDate of Txn = 30-08-2016
ために利用可能な日付が存在しないように。
> result
UID Date.of.Txn Datesorted
1 1 09-11-2016 25-10-2016
2 1 25-10-2016 30-08-2016
3 1 30-08-2016 0
4 2 30-08-2016 02-06-2016
5 2 02-06-2016 0
6 3 18-04-2016 31-01-2016
7 3 31-01-2016 0
8 4 03-11-2015 06-08-2015
9 4 06-08-2015 0
10 5 20-05-2015 08-05-2015
11 5 08-05-2015 0
dplyrとその進み/遅れ関数を使用できます。 https://cran.r-project.org/web/packages/dplyr/vignettes/window-functions.html – PhillipD