我正在使用数据,表1.9.4和R 3.1.2平台:x86_64-pc-linux-gnu(64位)。 ':='中的nomatch论证功能似乎不起作用。以下是示例代码
library(data.table)
options(datatable.nomatch=0)
dt1 = data.table(
a=c(rep(1, 2), rep(2, 2), 3),
b=c(1:2, 1:2,1),
c=101:105)
setkey(dt1, a, b)
dt1
dtw = data.table(a=c(1,3), w1=c(201, 203), w2=c(301,303))
setkey(dtw, a)
dtw
dt1[dtw, ':='(w1=i.w1, w2=i.w2)]
dt1
它在w1和w2列中返回NA而不是0.
a b c w1 w2
1: 1 1 101 201 301
2: 1 2 102 201 301
3: 2 1 103 NA NA
4: 2 2 104 NA NA
5: 3 1 105 203 303
正确的输出应为
a b c w1 w2
1: 1 1 101 201 301
2: 1 2 102 201 301
3: 2 1 103 0 0
4: 2 2 104 0 0
5: 3 1 105 203 303
我做错了什么,如何获得0而不是NA?