只是想知道这是否是data.table中的预期功能或错误?
a = data.frame(a=c(NA,1),aa=c(0,11))
b = data.frame(a=c(1),bb=c(11))
merge(a,b,all.x=T,by="a")
a aa bb
1 1 11 11
2 NA 0 NA
a = data.table(a=c(NA,1),aa=c(0,11))
b = data.table(a=c(1),bb=c(11))
merge(a,b,all.x=T,by="a")
a aa bb
1: NA 0 11
2: 1 11 11
再次这样
setkey(b,a)
b[a]
a bb aa
1: NA 11 0
2: 1 11 11
我真的希望你使用data.frame获得这种情况。
thansk
答案 0 :(得分:4)
请参阅FR#1043 Allow or disallow NA in keys?.。
这是一个已知问题,允许使用NA
个值,但您无法加入它们。
请参阅重复的问题并回答Select NA in a data.table in R以获取更详细的说明