【问题标题】:R load csv files from folderR从文件夹加载csv文件
【发布时间】:2016-03-29 12:40:46
【问题描述】:

我正在使用从本地目录同时加载一堆 csv 文件 以下代码:

myfiles = do.call(rbind, lapply(files, function(x) read.table(x, stringsAsFactors = FALSE, header = F, fill = T, sep=",", quote=NULL)))

并收到错误消息:

Error in rbind(deparse.level, ...) : 
  numbers of columns of arguments do not match

我担心引号会导致这种情况,因为我检查了 4 个文件中每个文件的列数,我发现文件号 3 包含 10 列(不正确),其余的只有 9 列(正确)。查看损坏的文件 - 它肯定是由导致列拆分的引号引起的。

感谢任何帮助

【问题讨论】:

  • 在没有错误的 csv 的情况下尝试它,如果它有效,那么只需以某种方式解决该 csv 的问题。该错误消息是因为列数不匹配。所以也许把它单独带入R,然后合并列并重新保存。
  • 有问题的 csv 是什么意思,我正在使用 read.table ?

标签: r csv lapply read.table do.call


【解决方案1】:

找到答案了,quote参数要设置成quote="\""

myfiles = do.call(rbind, lapply(files, function(x) read.table(x, stringsAsFactors = FALSE, header = F, fill = T, sep=",", quote ="\"")))

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-10-06
    • 2013-09-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-02-26
    相关资源
    最近更新 更多