我想逐行合并文件,但有些文件的行数不同(0也是如此)。我在R中遇到以下错误:
fileList <- list.files(, pattern=".txt")
new_df=do.call(rbind, lapply( fileList, function(X) {
data.frame(id = basename(X), tryCatch(read.table(X), error=function(e) NULL))}
))
data.frame中的错误(id = basename(X),tryCatch(read.table(X),error = function(e)NULL)):参数意味着不同的行数:1,0
关于如何合并文件并创建单个数据框的任何建议,即使某些文件没有任何行(我怎么能忽略它们)?
答案 0 :(得分:0)
使用data.table
使用fread
加载文件
使用rbindlist
绑定所有data.tables
当你添加一个最小的可重现的例子时,我会添加代码
library(data.table)
files = list.files(dir, pattern='.txt')
dtList = lapply(files, FUN=fread)
dt = rbindlist(dtList, use.names=TRUE)