数据无法匹配':'没有正确更新

时间:2015-03-17 05:11:14

标签: r data.table

我正在使用数据,表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?

0 个答案:

没有答案