R data.table从多个data.table的所有组合创建
我有:R data.table从多个data.table的所有组合创建,r,join,merge,data.table,expand,R,Join,Merge,Data.table,Expand,我有: require(data.table) tblDT1我们可以使用tidyr::crossing resultDT <- data.table(ID_1 = rep(1:2, each = 4), ID_2 = rep(3:4, times = 4), ID_3 = rep(5:6, times = 2, each = 2)) resultDT ID_1 ID_2 ID_3 1:
require(data.table)
tblDT1我们可以使用tidyr::crossing
resultDT <- data.table(ID_1 = rep(1:2, each = 4),
ID_2 = rep(3:4, times = 4),
ID_3 = rep(5:6, times = 2, each = 2))
resultDT
ID_1 ID_2 ID_3
1: 1 3 5
2: 1 4 5
3: 1 3 6
4: 1 4 6
5: 2 3 5
6: 2 4 5
7: 2 3 6
8: 2 4 6
tidyr::交叉(tblDT1、tblDT2、tblDT3)
#ID_1 ID_2 ID_3
#
#1 1 3 5
#2 1 3 6
#3 1 4 5
#4 1 4 6
#5 2 3 5
#6 2 3 6
#7 2 4 5
#8 2 4 6
我们可以使用tidyr::crossing
resultDT <- data.table(ID_1 = rep(1:2, each = 4),
ID_2 = rep(3:4, times = 4),
ID_3 = rep(5:6, times = 2, each = 2))
resultDT
ID_1 ID_2 ID_3
1: 1 3 5
2: 1 4 5
3: 1 3 6
4: 1 4 6
5: 2 3 5
6: 2 4 5
7: 2 3 6
8: 2 4 6
tidyr::交叉(tblDT1、tblDT2、tblDT3)
#ID_1 ID_2 ID_3
#
#1 1 3 5
#2 1 3 6
#3 1 4 5
#4 1 4 6
#5 2 3 5
#6 2 3 6
#7 2 4 5
#8 2 4 6
那么你想要所有列的所有组合?@sindri\u baldur,更像是多个表中所有行的所有组合。你在寻找吗?那么你想要所有列的所有组合?@sindri\u baldur,更像是多个表中所有行的所有组合。你在寻找吗?
tidyr::crossing(tblDT1, tblDT2, tblDT3)
# ID_1 ID_2 ID_3
# <int> <int> <int>
#1 1 3 5
#2 1 3 6
#3 1 4 5
#4 1 4 6
#5 2 3 5
#6 2 3 6
#7 2 4 5
#8 2 4 6