duplicated が NA の場合と同じように動作する理由を考えてみてください。
> duplicated(c(NA,NA,NA,1,2,2))
[1] FALSE TRUE TRUE FALSE FALSE TRUE
実際のところ
> NA == NA
[1] NA
このように、重複した NA を false としてマークする方法はありますか?
> duplicated(c(NA,NA,NA,1,2,2))
[1] FALSE FALSE FALSE FALSE FALSE TRUE