Define all functions in one .R file, call them from another .R file. How, if possible? Define all functions in one .R file, call them from another .R file. How, if possible? r r

Define all functions in one .R file, call them from another .R file. How, if possible?


You can call source("abc.R") followed by source("xyz.R") (assuming that both these files are in your current working directory.

If abc.R is:

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

and xyz.R is:

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

then this will work:

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

Even if there are cyclical dependencies, this will work.

E.g. If abc.R is this:

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

and xyz.R is this:

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

then,

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