У меня есть вложенный список, и я хочу создать символьный вектор (для путей к файлам / выходных данных) путем итерации по элементам списка и подэлементам каждого элемента в R. Список содержит 174 элемента, и каждый из эти элементы имеют пять подэлементов (имена этих подэлементов согласованы для каждого элемента списка).
См., Например, следующий вложенный список, который имеет два элемента с пятью подэлементами каждый:
iter1 <- list(item1 = "a", item2 = "b",item3 = "c", item4 = "d",item5 = "e")
iter2 <- list(item1 = "a", item2 = "b",item3 = "c", item4 = "d",item5 = "e")
All <- list(iter1 = iter1, iter2 = iter2)
Требуемый векторный вывод будет иметь следующую структуру (при условии, что все выходные данные сохраняются в папке, помеченной как «output»:
[1] "output/iter1_item1.png"
[2] "output/iter1_item2.png"
[3] "output/iter1_item3.png"
[4] "output/iter1_item4.png"
[5] "output/iter1_item5.png"
[6] "output/iter2_item1.png"...etc.
Если я не ошибаюсь, длина вектора символов должна быть 870 (174 * 5).
Я очень близок со следующим кодом:
for(i in 1:length(All)){
output_names <- paste0("output/",names(All[i]),"_",names(All[[i]]),".png")}
Создает символьный вектор длиной 5 - по сути, первый элемент с каждым из пяти подэлементов. Мне бы хотелось, чтобы код перебирал каждый элемент, чтобы и остальные из них были захвачены (приведенный выше воспроизводимый пример содержит только два элемента, но мой исходный список содержит 175 элементов).
Заранее благодарим за любую помощь по этому вопросу.