仅在第一个 运行 时才定义函数/全局变量
Define function / global variable only if first run
以前好像有人问过这个问题,现在找不到了
我有一个 R 文件,它以将函数定义为全局变量和加载库的代码开头。其中很多。我想要那些 运行 只有当它们之前没有 运行 时。
对于图书馆,以下代码(可在此处找到:How can I tell if a certain package was already installed?)完成工作:
if (!require(rockchalk)) {library(rockchalk)}
有没有类似的定义全局变量的东西?例如,我希望以下代码只 运行 一次(而不是每次我重新 运行 整个文件):
rowShift <- function(x, shiftLen = 1L) {
r <- (1L + shiftLen):(length(x) + shiftLen)
r[r<1] <- NA
return(x[r])
}
if (! exists(x = "rowShift")) {rowShift <- ...}
以前好像有人问过这个问题,现在找不到了
我有一个 R 文件,它以将函数定义为全局变量和加载库的代码开头。其中很多。我想要那些 运行 只有当它们之前没有 运行 时。
对于图书馆,以下代码(可在此处找到:How can I tell if a certain package was already installed?)完成工作:
if (!require(rockchalk)) {library(rockchalk)}
有没有类似的定义全局变量的东西?例如,我希望以下代码只 运行 一次(而不是每次我重新 运行 整个文件):
rowShift <- function(x, shiftLen = 1L) {
r <- (1L + shiftLen):(length(x) + shiftLen)
r[r<1] <- NA
return(x[r])
}
if (! exists(x = "rowShift")) {rowShift <- ...}