У меня есть список некоторой длины (скажем, 1000). Каждый элемент списка - это еще один список length = 2. Каждый элемент нового списка является data.table. Второй элемент каждого списка может быть пустой таблицей данных.Добавление элементов списка
Мне нужно rbind() все data.frames, которые находятся в первой позиции списка. В настоящее время я делаю следующее:
DT1 = data.table()
DT2 = data.table()
for (i in 1:length(myList)){
DT1 = rbind(DT1, myList[[i]][[1]]
DT2 = rbind(DT2, myList[[i]][[2]]
}
Это работает, но это слишком медленно. Есть ли способ избежать цикла for?
Спасибо заранее!
Даже если вы можете избежать для цикла, это будет медленно, как вы растете dataframes с 'rbind' широко. – niczky12
'rbindlist (lapply (mylist, \' [[\ ', 1L))'? –
Большое спасибо, это работает быстрее, чем все другие предложения! Пожалуйста, опубликуйте его, чтобы я мог «принять» ваш ответ. – GerasimosPanagiotakopoulos