Как получить все возможные матрицы (или data.frames), у которых столбец меньше исходной матрицы (или data.frame)
Например, допустим, у меня есть матрица (или данные).frame) tmp
structure(list(V1 = 1:5, V2 = 6:10, V3 = 11:15, V4 = 16:20, V5 = 21:25),
.Names = c("V1", "V2", "V3", "V4", "V5"), row.names = c(NA, -5L),
class = "data.frame")
Как эффективно получить: tmp [, - 1], tmp [, -2], tmp [, -3], tmp [, -4] и tmp[, -5]
В настоящий момент я могу думать о:
llply(list(1,2,3,4,5), function(x) {tmp[[x]] <- NULL; tmp})
Это также можно сделать с помощью lapply
.Есть ли лучший или более интуитивный и эффективный способ сделать это, особенно когда tmp
является матричным (без выполнения as.data.frame(tmp)
)?
Заранее благодарим вас за любую помощь или указатели.