low*_*rul 2 workflow project-management r
我的项目目录结构的一部分如下所示:
\projects\project\main.R
\projects\project\src
Run Code Online (Sandbox Code Playgroud)
其中\src包含一堆1-function-per-file,项目特定的函数.
问:将这些功能添加到工作目录的最佳实践方法是projects\project什么?
我看到了一些解决方案:
attach("./src").我试图避免这种情况,因为(1)Google Styleguide建议避免使用attach()和(2)我收到了
Warning messages:
Run Code Online (Sandbox Code Playgroud)
1: Reading Unix style database directory (./tmp) from Splus on Windows: may
have problems finding some datasets, especially those whose names
differ only by case (file tmp-script1.ssc should not have been made by
Splus on Windows) in: exists(name, where = db)
这样做的时候.
lapply(paste("./src/",list.files("./src/"),sep=""),source).这很好用,看起来很笨重.必须有更好的方法,对吗?
以他们的全名参考我的职能./src/myfunc.这会很快变得难看.我相信有更好的方法.
摆脱./src我的目录的一部分,只是把所有的功能扔在主工作目录中.这个问题是我宁愿保持一个接近John Myles White的目录结构ProjectTemplate
将所有函数放在一个文件中,./src/func.R并将其作为源代码.我想这种方法避免了"2"的丑陋.上面,但我真的希望每个文件都有一个功能.只是看起来更清洁.
尝试
lapply(list.files("src", full.names = TRUE), source)
Run Code Online (Sandbox Code Playgroud)
编辑
要么
lapply(Sys.glob("src/*"), source)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
436 次 |
| 最近记录: |