Зависит от большого количества факторов... Реализация списка, архитектура ЦП, JVM, семантика цикла, сложность равняются методу, и т.д. К тому времени, когда список становится достаточно большим для эффективного сравнительного тестирования (1000 + элементы), Основанные на хеше двоичные поиски побеждают линейные поиски без всяких усилий, и различие только увеличивается оттуда.
Hope это помогает!
Вы можете сделать что-то в следующих строках (я не смог проверить, так как у меня нет такой структуры):
extract.year <- function(my.year) lapply(x, function(y) y[[my.year]])
x.by.year <- sapply(my.list.of.years, function(my.year)
do.call(rbind, extract.year(my.year)))
Функция extract year создает список, содержащий только фреймы данных для данного года. Затем вы связываете их ...
Сначала сверните его в список:
list <- unlist(listoflists, recursive = FALSE)
df <- do.call("rbind", list)