运行 在 .txt 文件上执行多次脚本并将每个输出保存在单个 table 中的 r

run script multiple times on .txt files and save each output in single table in r

我必须 运行 对 100 多个 .txt 文件进行相关性分析。我有一个脚本,它读取单个文件,以我需要的适当方式组织数据,然后将相关值存储为一个新变量。该脚本非常大,因为数据被重新格式化了很多。

我的问题。如何在所有 100 多个 .txt 文件上重复制作此脚本 运行,并将所有 100 多个文件的单个相关值存储在单个 DF 中?理想情况下,最终的 DF 将由两列组成,一列包含 .txt ID,另一列包含相关系数,并且包含 100 多行。

我可以直接复制脚本并将其粘贴到 for 循环中吗?如果是这样,那将如何出现?我是新人! 有任何想法吗? 谢谢!

akrun 所述,您可以使用 lapply 执行此操作。没有看到你的数据,我会推荐这样的东西:

my.files <- list.files(pattern = "txt")  # use a pattern that only matches the files you want to read in
output <- lapply(my.files, correlation_function)

# Combine list of outputs into a single data.frame
output.df <- do.call(rbind, output)

这假设您有一个名为 correlation_function 的函数,它将文件名作为输入,load 将文件放入 R,运行相关分析,并且 returns一个data.frame.