R:如何附加具有不同列号的不同文本文件?

R: How to append different text files with different column numbers?

我有一系列由 MetOffice 提供的数据集。数据描述了英国的每日降雨量数据,我有 2008 年至 2015 年的数据。即有 9 个文本文件。我希望他们在彼此下方附加一个以创建一个大型数据集。那就是我想追加 2008 年,然后是 2009 年,然后是 2010 年,直到 2016 年的数据。

我将数据集导入到 R 环境中,想使用 Base R 连接所有数据集,有人可以帮我吗?

到目前为止,我已经创建了一个代码来读取这样的数据:

setwd("C:/Useful Data/UK Daily Rainfall Data")
temp = list.files(pattern="*.txt")
for (i in 1:length(temp))
  assign(temp[i], read.table(temp[i],header = FALSE,sep=",",fill=TRUE))

此代码已使用原始名称导入了所有数据集。这可以在下图中描述:

这里的主要挑战还在于所有数据集都有不同数量的变量。

编辑:尝试@akrun 解决方案后出错:

我们可以使用 library(data.table) 中的 rbindlist,它也有 fill 参数,以防每个数据集中的列数不同

library(data.table)
rbindlist(lapply(temp, fread), use.names=TRUE, fill=TRUE, idcol=TRUE)
#   .id V1 V2 V3
#1:   1  1  2 NA
#2:   1  2  3 NA
#3:   1  3  4 NA
#4:   2  1 NA  6
#5:   2  2 NA  7
#6:   2  3 NA  8
#7:   2  4 NA  9
#8:   2  5 NA 10

数据

d1 <- data.frame(V1= 1:3, V2= 2:4)
d2 <- data.frame(V1= 1:5, V3= 6:10)
lst <- list(d1, d2)
lapply(seq_along(lst), function(i) write.table(lst[[i]], 
    paste0('d', i, '.txt'), row.names=FALSE, quote=FALSE))

temp <- list.files(pattern="*.txt")