阅读我项目中每个 R 脚本的第一行

Read the first line of every R script in my project

我正在尝试组织一个我的团队一直在合作的不断发展的 R 项目。我最初的想法是将所有脚本名称放入一个列表

 x = list.files(recursive = TRUE)

然后把它放在电子表格中,这样我就可以浏览,思考哪些脚本已经过时,哪些可能应该形成单独的项目。

值得庆幸的是,大多数脚本的顶部都有一行注释,总结了脚本的内容。

有没有一种 R 方法可以将所有这些第一行评论放入数据框中?即 R 中是否有从文件名中提取代码行的函数?

尝试以下操作:

myRFiles = list.files(pattern = "*.R")
firstLines = lapply(myRFiles, FUN =  read.table, nrows = 1, sep = "\n")
df = do.call(rbind, firstLines)

myRFiles 包含您所有的 R 文件(根据您的情况更改模式)。

使用 read.table 可以读取第一行 (nrows=1) 并使用换行符 (\n) 作为分隔符,因此每个文件只读取一列。

最后用 do.callrbind

将所有数据连接成一个数据框

您可以通过readLines(n = 1)读取文件的第一行。要读取所有第一行,请使用应用循环。然后你可以将结果放入数据框中。

data.frame(comment = sapply(x, readLines, n = 1))

其中 x 是文件名的字符向量。