如果我运行下面的代码
dt<-data.table(col1=c(0,1,2),col2=c("a","b","c"),col3=c("aa","ab","cc"))
setkey(dt,col1)
dt1<-data.table(a=c(1,2))
dt[dt1]
Run Code Online (Sandbox Code Playgroud)
我得到了以下结果
col1 col2 col3
1: 1 b ab
2: 2 c cc
Run Code Online (Sandbox Code Playgroud)
但是,预期的结果是
a col1 col2 col3
1: 0 a aa
2: 1 1 b ab
3: 2 2 c cc
Run Code Online (Sandbox Code Playgroud)
如何获得预期的结果?
如果您可以修改dt:
dt[dt1, a := i.a][]
# col1 col2 col3 a
#1: 0 a aa NA
#2: 1 b ab 1
#3: 2 c cc 2
Run Code Online (Sandbox Code Playgroud)
如果你不是,copy()那么首先.
| 归档时间: |
|
| 查看次数: |
48 次 |
| 最近记录: |