2
我需要做一些操作,使用只有 data.table库。我不想加入/合并,但设置操作。所以我们不按键匹配列,而是添加来自不同data.tables的行。使用data.table设置操作
我们处理来自内置数据集的两个样本。
所有的问题的问题是下面:
#install.packages("nycflights13")
library(nycflights13)
#install.packages("sqldf")
library(sqldf)
#install.packages("data.table")
library(data.table)
dt_airports <- data.table(airports)
Adt <- dt_airports[1:10]
Bdt <- dt_airports[6:15]
sqldf('SELECT * FROM A INTERSECT SELECT * FROM B')
# can I do it better using data.table?
rbindlist(list(Adt,Bdt))[duplicated(rbindlist(list(Adt,Bdt))),]
sqldf('SELECT * FROM A EXCEPT SELECT * FROM B')
# how to do it using data.table?
sqldf('SELECT * FROM B EXCEPT SELECT * FROM A')
# how to do it using data.table?
的[如何加入(合并)的数据帧(内,外,左可能的复制,右)?](http://stackoverflow.com/questions/1299871/how-to-join-merge-data-frames-inner-outer-leftright) – theArun
不,我不想加入,但设置操作。所以我们不按键匹配列,而是添加来自不同data.tables的行。 – AgnieszkaTomczyk
您正在合并两个基于特定列的data.tables。你要求的第一行是相交,第二行是left_join(我认为),第三行是右。 – theArun