从文件夹中存在的多个 .csv 文件中导入 R 中的选定 .csv 文件

Importing selected .csv files in R out of multiple .csv files present in a folder

我在一个文件夹中有多个 .csv 文件,命名为 Pt4_1、Pt4_2、Pt5_1、Pt5_2...等等。 R中有没有办法导入选定的文件。据我所知(绝对非常有限)似乎有一种导入 .csv 文件的方法,例如:

read.table("Pt4_1.csv", header = TRUE, sep = ",")

但是,这似乎对我没有任何帮助,因为我必须导入多个 .csv 文件,结果多次编写上述语法(乏味)。

任何人都可以提出一种方法,以便我能够编写一个循环并相应地调用多个 .csv 文件吗?提前致谢!!

如果文件在工作目录中并且它们具有明确的模式,例如,下面的代码将 select 以 (^) 开头且后跟 Pt 的文件数字 (\d+)、下划线 (_)、数字 (\d+) 和 .csv。使用 lapplyread.csv.

读取 "list" 中的文件
 files <- list.files(pattern='^Pt\d+_\d+.csv')
 lst <- lapply(files, read.csv,header=TRUE)

如果文件很大,另一个选择是使用 data.table

中的 fread
 library(data.table)
 lst1 <- lapply(files, fread)

更新

您可以创建一个函数来创建模式。

 filePat <- function(d1, d2){
      sprintf('Pt%d_%d.csv', d1, d2)
     }

filePat(2,3)
#[1] "Pt2_3.csv"