设置R函数的默认值很简单,例如
myfunction = function(x, k=42, c=1){
result = x*x + k - c
return(result)
}
默认情况下,k=42
,c=1
和x
是必填参数。
我正在创建一个R包,希望将其作为默认文件。 (在这种情况下,这些可以是通过.rda
文件加载的变量,也可以是实际的文本或csv文件。)
要在inst/extdata
中提供文件的路径,文档建议使用以下内容:
http://r-pkgs.had.co.nz/inst.html
例如,要查找inst / extdata / mydata.csv,请致电 system.file(“ extdata”,“ mydata.csv”,package =“ mypackage”)
创建默认用于特定文件的函数参数的推荐方法是什么?
我认为直接链接到文件不是最好的方法,例如
do_something_with_data = function(file=system.file("extdata", "mydata.csv", package = "mypackage")){
data.table::fread(file)
...
}
另一种方法是将所有此类参数设置为NULL
,然后在不使用其他任何参数的情况下使用默认参数:
do_something_with_data2 = function(file=NULL){
if (is.null(file)){
file = system.file("extdata", "mydata.csv", package = "mypackage")
}
...
}