【问题标题】:How to import numbered files in R [duplicate]如何在R中导入编号文件[重复]
【发布时间】:2017-05-13 18:24:50
【问题描述】:

我有多个名为 xdata.ascii 的文件,x 是一个数字。如何将名称从 1data.ascii 的所有文件导入到,例如 100data.ascii。我还有其他名称不同的 .ascii 文件,不想导入它们。

【问题讨论】:

    标签: r import


    【解决方案1】:

    我们可以使用list.files来获取所有具有该模式的文件

    files <- list.files(pattern = "\\d+data\\.ascii", full.names = TRUE)
    

    然后通过将lapply 循环到list 来读取文件

    lst <- lapply(files, read.csv)
    

    【讨论】:

    • 当我使用is.data.frame(lst) 时,它返回FALSE。如何获取数据作为数据框?
    • @MOON 这是data.framelist,而不是单个data.frame。假设你想绑定所有的data.frame,使用do.call(rbind, lst)假设所有数据集中的列都相同或library(data.table); rbindlist(lst)
    • 能否请您稍微解释一下代码。我知道\d 是十进制的。我不明白“\\d+data\\”开头或结尾的“\\”。
    • @MOON 当然。 \\d+ 表示数字+ 表示一个或多个后跟data,后跟一个dot,这是一个元字符,所以我们必须用\` to get the literal meaning of 对其进行转义。否则它会被评估为后面的任何字符ascii
    猜你喜欢
    • 2019-03-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-12-04
    • 1970-01-01
    • 2021-05-14
    • 1970-01-01
    相关资源
    最近更新 更多