在data.table中添加一列,并在另一个data.table

时间:2017-03-07 12:14:59

标签: r data.table

我有一个问题,即根据另一个data.table中的信息向data.table添加列。

这就是我的数据的外观:

dt.1: One column with 1.9 million Product ID's
0771044445
0827229534
0827229534
0738700797
etc.

dt.2: Two columns with 7 million Product ID's + Categories
0842328327  Book
0842328327  Book
1577943082  DVD
Etc.

现在我想在dt.1中创建一个列,通过在dt.2中查找此类别来添加类别。 dt.1的所有ID都在dt.2中。

我试过了:

 dt.1[,group := ID %in% dt.2, by = dt.2$category] 

但是我收到以下错误:

  Error in `[.data.frame`(dt.amazon.similar, , `:=`(group, asin %in% dt.amazon.reviews),  : unused argument (by = dt.amazon.reviews$group)

1 个答案:

答案 0 :(得分:1)

您还可以使用快速连接语法进行dt1

的原位编辑
dt.1[dt.2, on="Product ID", category:=category]