我使用这个foreach
包来并行化一些东西,我厌倦了.export
每次需要使用它时都指示 5 个函数。
我知道我可以做到foreach(...,.export=ls(.GlobalEnv))
,但这会将大量数据传输给工作人员并减慢我的速度(可以定义大表)。
所以问题是我怎样才能只列出.GlobalEnv
我这样做了:
getAllFunctions <- function(envir=.GlobalEnv){
allClasses <- sapply(grep(x=ls(envir), pattern='^%', value=TRUE, invert=TRUE), FUN=function(x){class(eval(parse(text=x)))})
fnNames <- names(allClasses)[allClasses == 'function']
return(fnNames)
}
但这很丑陋(并给出了一切),我敢肯定有一种惯用的方式