【问题标题】:Nested functions: "Error: Could not find nested function"嵌套函数:“错误:找不到嵌套函数”
【发布时间】:2012-03-12 09:25:55
【问题描述】:

我正在定义一个具有嵌套函数的函数,如下所示:

 afunc <- function(p1, p2) { 

 for loop {
   f = bfunc(p1)
 }
 g = cfunc(p2)

 bfunc <- function(p3) {
   ...
 }

 cfunc <-function(p4){
  ...
 }

}

由于某种原因,我收到“错误:找不到函数“bfunc””。我在这里错过了什么吗?提前致谢。

【问题讨论】:

    标签: r nested-function


    【解决方案1】:

    你需要将你的函数定义移动到它执行之前:

    afunc <- function(p1, p2) { 
     bfunc <- function(p3) {
       ...
     }
    
     cfunc <-function(p4){
      ...
     }
    
     for loop {
       f = bfunc(p1)
     }
     g = cfunc(p2)
    
    
    }
    

    【讨论】:

    • 太棒了!谢谢你。只需将我的代码从 Matlab 采用到 R。因此,混乱。谢谢。