Я пытаюсь создать новый список, который содержит каждый отдельный столбец матрицы из старого списка.Например:
var_names <- c('a', 'b', 'c', 'd')
var_combi <- list()
for(i in 1:length(var_names)) {var_combi[[i]] <- combn(var_names[1:length(var_names)],i)}
c(var_combi)
Затем я получил список объектов, как показано ниже.Каждый перечисленный элемент представляет собой матрицу:
[[1]]
[,1] [,2] [,3] [,4]
[1,] "a" "b" "c" "d"
[[2]]
[,1] [,2] [,3] [,4] [,5] [,6]
[1,] "a" "a" "a" "b" "b" "c"
[2,] "b" "c" "d" "c" "d" "d"
[[3]]
[,1] [,2] [,3] [,4]
[1,] "a" "a" "a" "b"
[2,] "b" "b" "c" "c"
[3,] "c" "d" "d" "d"
[[4]]
[,1]
[1,] "a"
[2,] "b"
[3,] "c"
[4,] "d"
Я хочу создать новый список new_list
, например, приведенный ниже, например,
[[1]]
[1] "a"
[[2]]
[1] "b"
[[3]]
[1] "c"
[[4]]
[1] "d"
[[5]]
[1] "a" "b"
[[6]]
[1] "a" "c"
, чтобы я мог зациклить их или использовать lapply
, чтобы выбрать эти переменные из моего набора данных mydata
, используя mydata[names(mydata) %in% new_list[[i]]]
.
Сейчас я изо всех сил пытаюсь создать new_list
и не могу найти правильное решение для этого (я попытался unlist
,c
и append
).Если мне нужно использовать цикл for
, как мне перебрать список и перечисленные здесь столбцы матрицы?