在R函数参数列表中,我可以将参数作为参数传递给另一个参数吗?

时间:2014-02-05 16:53:16

标签: r

例如:

假设我有两个函数,一个调用myfunc,一个调用do.something。 我想在myfunc中使用do.something。

myfunc <- function(parA,arglist=list(parB=parA)){
  print("parA in myfunc")
  print(parA)
  print("....")
  print("....")
  do.call("do.something", args=arglist)
}

do.something <- function(parB){
  print("parB in do.something")
  print(parB)
}

现在执行它。

a.data=matrix(1:9,ncol=3)
myfunc(parA=a.data,arglist=list(parB=parA))

[1] "parA in myfunc"
     [,1] [,2] [,3]
[1,]    1    4    7
[2,]    2    5    8
[3,]    3    6    9
[1] "...."
[1] "...."
Error in do.call("do.something", args = arglist) : 
  object 'parA' not found

在myfunc内部,我想将parA传递给parB,但是它说找不到parA,如何解决?

0 个答案:

没有答案