世帯のリストと、それらが新しい郵便番号に移動した日付があります。小さなセグメントは次のとおりです。
ADD0 <- as.Date(c("2008-07-01", "1998-07-01", "2001-11-01", "1997-08-01"), format="%Y-%m-%d")
ADD1 <- as.Date(c(NA, "2001-09-01", "2002-03-01", NA), format="%Y-%m-%d")
ADD2 <- as.Date(c(NA, "1992-09-01", "2001-09-01", "2007-12-01"), format="%Y-%m-%d")
ZIP0 <- as.character(c(30126, 30345, 30068, 30253))
ZIP1 <- as.character(c(NA, 30263, 31064, NA))
ZIP2 <- as.character(c(NA, 30345, 30067,30062))
DF <- data.frame(ADD0, ZIP0, ADD1, ZIP1, ADD2, ZIP2)
> DF
ADD0 ZIP0 ADD1 ZIP1 ADD2 ZIP2
1 2008-07-01 30126 <NA> <NA> <NA> <NA>
2 1998-07-01 30345 2001-09-01 30263 1992-09-01 30345
3 2001-11-01 30068 2002-03-01 31064 2001-09-01 30067
4 1997-08-01 30253 <NA> <NA> 2007-12-01 30062
そのため、ハウス2は'98年7月、'01年9月、および'92年9月に移転しました。ご覧のとおり、私の問題は、日付が必ずしも正しい順序であるとは限らないことです。これを行うために私が見ることができる唯一の方法は、データセットをループして、私がほとんど経験したことのない独自のソートアルゴリズムを作成することです。45万回の観測があるので、効率も重要です。
誰かが以前にこの種のことをしたことがありますか?任意のヒント?私が見つけることができなかったクリーンな解決策はありますか?