Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
返回自定义R包中的函数的函数_R_Function_Package_Devtools - Fatal编程技术网

返回自定义R包中的函数的函数

返回自定义R包中的函数的函数,r,function,package,devtools,R,Function,Package,Devtools,我的问题与此有关: 但是,我正在尝试创建一个R包。我有以下函数,它使用sysdata.rda中存储的名为NInput的数据帧。我想使用approxfun函数返回一个函数。我希望这个包的用户能够调用NfunDates,其中日期是使用approxfun创建的函数的常用输入 #' A function to return interpolated N input data #' #' function to return interpolated N input data for decimal da

我的问题与此有关: 但是,我正在尝试创建一个R包。我有以下函数,它使用sysdata.rda中存储的名为NInput的数据帧。我想使用approxfun函数返回一个函数。我希望这个包的用户能够调用NfunDates,其中日期是使用approxfun创建的函数的常用输入

#' A function to return interpolated N input data
#'
#' function to return interpolated N input data for decimal dates
#' @param Dates A scalar or vector of decimal input dates
#' @keywords nitrogen
#' @export
#' @examples
#' Nfun()

Nfun <- function(){
 NInput$Date
 NInput$Ninput
 Nfun <- approxfun(NInput$Date,NInput$Ninput,rule=2)
 }
如果我设定

 Nfun <- Nfun() 
但是,我不希望用户必须这样做。我想我在如何定义包函数方面犯了一些基本错误,但我被难住了。

您的Nfun实现没有参数,因此发生了错误

如果我理解正确,您希望通过approxfun生成函数,Nfun返回函数值供用户输入,对吗? 如果是这样的话,以下方法应该有效

Nfun <- function(x){
  NInput$Date
  NInput$Ninput
  Nfun <- approxfun(NInput$Date,NInput$Ninput,rule=2)(x)
}

你把那些名字弄得一团糟,不要把所有的名字都命名为Nfun!我还希望它打印值,而不需要将它们指定给对象来查看它们。你能推荐一些类似于:printNfunx?print works的东西吗。cat和message将是其他候选人。
 Nfun(1900)
[1] 0.7846106
Nfun <- function(x){
  NInput$Date
  NInput$Ninput
  Nfun <- approxfun(NInput$Date,NInput$Ninput,rule=2)(x)
}