rbind具有不同列的数据帧列表

Bru*_*ita 4 r

我有一个数据框列表,其中一些数据框的列较少。参见示例:

a <- data.frame (x1 = 1, x3 = 2, x4 = 7)
b <- data.frame (x1 = 3, x2 = 4, x3 = 3, x4 = 8)
c <- data.frame (x1 = 9, x2 = 5, x3 = 2, x4 = 9)
myList = list(a, b, c)
Run Code Online (Sandbox Code Playgroud)

数据帧a未命中列x2。我需要myList之外的数据框,因此我需要执行以下操作:

mydf = do.call(rbind, myList)
Run Code Online (Sandbox Code Playgroud)

但是问题是我得到以下错误:

Error in rbind(deparse.level, ...) : 
  numbers of columns of arguments do not match
Run Code Online (Sandbox Code Playgroud)

我怎样才能得到其中列数据帧x2进行a填充NA

Lyz*_*deR 5

您可以使用data.table

library(data.table)
rbindlist(myList, fill = TRUE)
#   x1 x3 x4 x2
#1:  1  2  7 NA
#2:  3  3  8  4
#3:  9  2  9  5
Run Code Online (Sandbox Code Playgroud)