My idea is simple, I have a wrapper package that is ready to load and execute R and Python scripts (through reticulate
).
Despite the requirement for a common file/code structure, the idea is that if a user wants to define a new method for the workflow (say, updated taxonomy), it would be enough to add a new script in the scripts folder (i.e., place files in rules/
, py/...
, and rebuild).
What is the proper way to make this work?
I've tried loading the files through .onLoad
, i.e.,
.onLoad <- function(lib, pkg){
require(reticulate) #I know require is bad practice; this is for example purposes
files <- dir('rules')
lapply(files, function(w){
source(sprintf('rules/%s', w))
source_python(sprintf("py/%s/rule.py", w))
})
}
But this seems to be looking at local directories, rather than inside the package.
I have found that R is able to load .rda
or .RData
files from data/
directory, or .txt, .csv
, but that's about it. What about extensions, like sourcing files as in my example?
Any help would be appreciated!