【问题标题】:Executing two commands into one command in R在R中将两个命令执行为一个命令
【发布时间】:2017-12-31 18:23:32
【问题描述】:

我的目录文件夹中有 12 个文件,文件类型为 csv 和 SAS7dbat。我用这个命令上传它们:

fileList1 = list.files(path=".", pattern=".csv") 
fileList2 = list.files(path=".", pattern=".sas") 

我试着写了这个命令,但是没有成功:

fileList = list.files(path=".", pattern= c(".csv", ".sas") 

另外,我需要两个使它们成为一个命令:

  list2env(
lapply(setNames(fileList1, make.names(paste(2008:2016, "_kvish_1_10t",   sep= ""))), 
      read.csv), envir = .GlobalEnv)

list2env(
lapply(setNames(fileList2, make.names(paste0(2005:2007, "_kvish_1_10t", sep= ""))),
       haven::read_sas), envir = .GlobalEnv)

【问题讨论】:

    标签: r list file command


    【解决方案1】:

    模式只接受一个参数。

    如果你想找到几个元素,你应该尝试使用正则表达式:

    fileList <- list.files(path=".", pattern= "\\.csv|\\.sas")
    

    最好的,

    科林

    【讨论】:

    • 或者list.files(path = "\\.(csv|sas)$"),我猜。
    • 嘿,你能回答我添加到帖子中的第二个问题吗?我用你给我看的方法试过了
    猜你喜欢
    • 2016-01-19
    • 1970-01-01
    • 1970-01-01
    • 2012-04-10
    • 2011-12-01
    • 1970-01-01
    • 2013-04-12
    • 1970-01-01
    • 2017-04-14
    相关资源
    最近更新 更多