2017-07-25 240 views
-1

我在我的目录文件夹中有12个文件,文件的类型是csv和SAS7dbat。我用这个命令将上传到:执行两个命令到R中的一个命令中

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) 

回答

1

模式只需要一个参数。

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

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

最佳,

科林

+1

或'list.files(PATH =“\\(CSV | sas)$“)',我想。 – Frank

+0

嘿,你能回答我添加到帖子中的第二个问题吗?我以你向我展示的方式尝试 –