定义的所有功能于一身.R文件,从另一个.R文件调用它们。 怎么样,如果可能的话?(Define

2019-07-04 02:49发布

如何调用另一个文件中abc.R文件中定义的功能,说xyz.R?

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

Answer 1:

你可以调用source("abc.R")其次是source("xyz.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
>


文章来源: Define all functions in one .R file, call them from another .R file. How, if possible?