Слияние большого количества data.frames

Возможный дубликат:
Объединение нескольких кадров данных в список одновременно

пример data.frames :

  df1 = data.frame(id=c('1','73','2','10','43'),v1=c(1,2,3,4,5)) 
df2 = data.frame(id=c('7','23','57','2','62','96'),v2=c(1,2,3,4,5,6))
df3 = data.frame(id=c('23','62'),v3=c(1,2))

Примечание. id уникален для каждого файла data.frame. Я хочу, чтобы результирующая matrix выглядела как

 1 1 NA NA 2 3 4 NA 7 NA 1 NA 10 4 NA NA 23 NA 2 1 43 5 NA NA 57 NA 3 NA 62 NA 5 2 73 2 NA NA 96 NA 6 NA 

В этом случае я показываю только 3 набора данных, у меня на самом деле есть как минимум 22 из них, поэтому в конце мне нужна matrix nx (22 + 1), где n – количество идентификаторов для всех 22 наборов данных.

Учитывая 2 набора данных, мне нужно получить их ids в первом столбце, а 2-й и 3-й столбцы заполнены значениями, если нет значения, а затем введите NA .

    Поместите их в list и используйте merge с Reduce

     Reduce(function(x, y) merge(x, y, all=TRUE), list(df1, df2, df3)) # id v1 v2 v3 # 1 1 1 NA NA # 2 10 4 NA NA # 3 2 3 4 NA # 4 43 5 NA NA # 5 73 2 NA NA # 6 23 NA 2 1 # 7 57 NA 3 NA # 8 62 NA 5 2 # 9 7 NA 1 NA # 10 96 NA 6 NA 

    Вы также можете использовать эту более сжатую версию:

     Reduce(function(...) merge(..., all=TRUE), list(df1, df2, df3)) 
    Interesting Posts

    Как принудительно использовать меню переполнения на устройствах с помощью кнопки меню

    Неявное преобразование при перегрузке операторов для classов шаблонов

    Django 1.8: создать начальные миграции для существующей схемы

    Android: Как получить дату создания файла?

    «Использование необъявленного типа» в Swift, хотя тип является внутренним и существует в том же модуле

    JSON Spec – ключ должен быть окружен кавычками?

    захват изображений с помощью средства MediaStore.ACTION_IMAGE_CAPTURE в Android

    Как восстановить Chrome без кнопки «Восстановить» и файлов «Последняя сессия» и «Последние вкладки»?

    Есть ли веские основания использовать FormCollection вместо ViewModel?

    Производительность нескольких папок RAM по сравнению с одиночными палочками

    Обработка события закрытия windows с помощью WPF / MVVM Light Toolkit

    Intel VT-x исчез после обновления до Windows 8

    Можно ли создать экземпляр вложенного classа с помощью Java Reflection?

    Могу ли я изменить Google Chrome, чтобы предсказать мой поиск, и мгновенно посетить первый результат?

    Список всех участников группы (Mac OS X)

    Давайте будем гением компьютера.