vecseq数据中出错,合并(联接多个)数据。表r
我有两个数据表:vecseq数据中出错,合并(联接多个)数据。表r,r,merge,data.table,R,Merge,Data.table,我有两个数据表: train.o对于160057行,列id是唯一的 train.t有187105085行,列id不唯一,有160057个唯一id,都在train.o中 我想合并它,以拥有一个包含187105085行的data.table 我打字的时候 > setkey(train.o,id) > setkey(train.t,id) > trainbig=merge(train.t,train.o) 我明白了 vecseq(f_uuu,len_uuu,if(allow.c
- train.o对于160057行,列id是唯一的
- train.t有187105085行,列id不唯一,有160057个唯一id,都在train.o中
> setkey(train.o,id)
> setkey(train.t,id)
> trainbig=merge(train.t,train.o)
我明白了
vecseq(f_uuu,len_uuu,if(allow.cartesian)NULL-else中的错误
as.integer(max(nrow(x)):连接结果超过2^31行
(内部vecseq已达到物理极限)。很可能指定错误
检查i中是否存在重复的键值,每个键值都与
在x中重复同一组。如果可以,请尝试包含j
将按
(按而不按)放下,使j为每组运行
避免较大的分配。否则,请搜索此错误
有关的常见问题解答、Wiki、堆栈溢出和数据表帮助中的消息
忠告
我错了什么
编辑:
您是否尝试过不合法的(但有效的):
然后手动删除您不感兴趣的变量?您是否尝试过不合法(但有效)的方法:
然后手动删除您不感兴趣的变量?至少向我们显示数据集的结构和列名,并向我们显示您要加入的列上没有重复的元素。数据来自[link]-train.o是merge(trainHistory,offers,by=“offer”)-train.t是子集(交易,id%在%trainHistory$id中)交易文件可以通过(id,chain)连接到历史文件。但是id和chain的setkey没有帮助。我还编辑了post以包括这两个数据的标题。表什么是
sum(!duplicated(train.o$id))
和sum(!duplicated(train.t$id))
give?160057,我一开始就写了。至少向我们展示数据集的结构和列名,并向我们展示您要加入的列上没有重复的元素。数据来自[link]-train.o是merge(trainHistory,offers,by=“offer”)-train.t是子集(事务,id%在%trainHistory$id中)事务文件可以通过(id,chain)连接到历史文件。但是id和chain的setkey没有帮助。我还编辑了post以包含这两个数据的头。table什么是sum(!duplicated(train.o$id))
和sum(!duplicated(train.t$id))
give?这两个都是160057,我在一开始写的。
> head(train.o)
offer id chain market repeattrips repeater offerdate category quantity company
1: 1197502 86252 205 34 16 t 2013-03-27 3203 1 106414464
2: 1208251 86246 205 34 5 t 2013-04-24 2202 1 104460040
3: 1197502 12682470 18 11 0 f 2013-03-28 3203 1 106414464
4: 1197502 12996040 15 9 0 f 2013-03-25 3203 1 106414464
5: 1204821 13089312 15 9 0 f 2013-04-01 5619 1 107717272
6: 1197502 13179265 14 8 0 f 2013-03-29 3203 1 106414464
offervalue brand
1: 0.75 13474
2: 2.00 3718
3: 0.75 13474
4: 0.75 13474
5: 1.50 102504
6: 0.75 13474
> head(train.t)
id chain dept category company brand date productsize productmeasure
1 86246 205 7 707 1078778070 12564 2012-03-02 12 OZ
2 86246 205 63 6319 107654575 17876 2012-03-02 64 OZ
3 86246 205 97 9753 1022027929 0 2012-03-02 1 CT
4 86246 205 25 2509 107996777 31373 2012-03-02 16 OZ
5 86246 205 55 5555 107684070 32094 2012-03-02 16 OZ
6 86246 205 97 9753 1021015020 0 2012-03-02 1 CT
purchasequantity purchaseamount
1 1 7.59
2 1 1.59
3 1 5.99
4 1 1.99
5 2 10.38
6 1 7.80
trainbig=merge(train.t,train.o, by=.EACHI, all=T)