如何在不使用 Pandas 的情况下迭代读取 R 中的文件并将每个文件的内容保存在不同的变量中?

How to iteratively read in files in R and save the content of each file in a different variable without using Pandas?

我有一个场景,我有一堆名称相同但名称中有一个数字的文件。我想创建与文件一样多的变量。到目前为止,我的代码如下所示:

for(i in 1:26)
{
  if ( i <= 9 )
  {
      OutFile=paste0("Iterated.Filename0",i,".out")
      out <- read.table(OutFile, header = FALSE, sep="\t", dec=".", na.strings = "NA")
  } else {
      OutFile=paste0("Iterated.Filename",i,".out")
      out <- read.table(OutFile, header = FALSE, sep="\t", dec=".", na.strings = "NA")
  }
}

else语句前后的区别是“Filename”后面的0

问题是最终创建的 out 变量是 (a) 只是一个变量而不是变量 out1out26 并且 (b) 它不包含串联的所有读入文件的数据,但只有第 26 个 .out 文件的数据。

所以我的问题是:如何以每个文件的内容存储在不同变量中的方式读取 R 中的多个文件? 尤其是如何在不使用 Pandas?

的情况下做到这一点

一种可能的使用内置函数如下:

paths <- sprintf("Iterated.Filename%02d.out", 1:26)
out <- lapply(paths, read.table, header=FALSE, sep="\t", dec=".", na.strings="NA")

这里的变量out是一个包含26个数据集的列表