我需要从原始数据帧拆分为所有可能的 3 列组合接收所有可能的数据帧。并且所有数据框都必须包含 id 列。我处于死胡同,不知道如何保存所有可能的数据帧,以便可以进一步使用它们。其中一个想法是将它们保存到列表中。但我仍然不知道如何将所有必要的列绑定在一起。我发现了一个与我很接近的问题,但它仍然非常不同。此外原始数据框有超过 100 万行和大约 20 列,因此使用 data.table 是合理的。
frame <- data.frame(id = letters[seq( from = 1, to = 10 )],
a = rnorm(10, 4), b = rnorm(10, 6), c=rnorm(10, 5),
d = rnorm(10, 2))
combos <- data.table(combn(colnames(frame[,-1]), 3))
combos <- data.table(t(rbind(combos, t(rep(colnames(output2[,1]), ncol(combos))))))
names(combos) <- c('category_1', 'category_2', 'category_3', 'id')
list_tables <- apply(combos, 1, as.list)
伙计们,我将不胜感激。提前致谢