在一个.R文件中定义所有的函数,从另一个.R文件中调用它们。 如果可能,怎么样?

如何在另一个文件中调用abc.R文件中定义的函数,比如xyz.R?

补充问题是,如何从R提示符/命令行中调用abc.R中定义的函数?

你可以调用source("abc.R")然后调用source("abc.R") (假设这两个文件都在你当前的工作目录中)。

如果abc.R是:

 fooABC <- function(x) { k <- x+1 return(k) } 

和xyz.R是:

 fooXYZ <- function(x) { k <- fooABC(x)+1 return(k) } 

那么这将工作:

 > source("abc.R") > source("xyz.R") > fooXYZ(3) [1] 5 > 

即使有周期性的依赖关系,这也是可行的。

例如,如果abc.R是这样的:

 fooABC <- function(x) { k <- barXYZ(x)+1 return(k) } barABC <- function(x){ k <- x+30 return(k) } 

和xyz.R是这样的:

 fooXYZ <- function(x) { k <- fooABC(x)+1 return(k) } barXYZ <- function(x){ k <- barABC(x)+20 return(k) } 

然后,

 > source("abc.R") > source("xyz.R") > fooXYZ(3) [1] 55 >