R函数从另一个函数调用

时间:2015-04-01 08:45:50

标签: r function

我需要修改包QRM中的函数gamGPDfit()来解决问题。函数gamGPDfit()依次调用其他函数fit.GPD()和gamGPDfitUp()来计算参数的估计值。

该功能的结构如下所示:

 #######################################################
 gamGPDfit<-function (..., init = fit.GPD(...) , ...)
 {
...
Par<-gamGPDfitUp(...)
...
return (list(...))
}
<environment: namespace:QRM>
#######################################################

现在,当我调用fit.GPD()时,我在命令窗口中获取该函数以进行必要的修改。但是,另一个函数gamGPDfitUp()返回

 > gamGPDfitUp
 Error: object 'gamGPDfitUp' not found

问题是,如何在另一个函数中获得这样的内置函数?它与环境QRM有关吗?如果是这样,我如何获得修改它的功能?。

我附加了这个函数,gamGPDfitUp()的调用用红色表示。

1 个答案:

答案 0 :(得分:1)

有几件事可能派上用场。

一个是help(":::") - 访问命名空间中的导出变量和内部变量。您可以使用QRM:::前缀来访问GamGPDfitUp。

另一个函数是fixInNamespace,它允许您修改包内的函数。这个帮助页面列出了一些更有趣的工具。玩这个,它应该解决你的大部分问题。