【发布时间】:2016-12-26 00:55:20
【问题描述】:
我发现在环境中对类似功能进行分组很方便。
myenv <- new.env()
f <- function() print(1)
assign("f", f, myenv)
rm(f) # use before attach to avoid "object is masked" message
attach(myenv)
rm(myenv)
这样我就可以把相关的函数一起列出来了:
ls("myenv")
# [1] "f" # and any other possible function defined in myenv
无论如何,当我打印函数时:
f
# function() print(1)
# <environment: 0x000000001df15d80>
我只获得了对环境哈希的引用,而获得对包的实际名称的引用会很好:
sd
function (x, na.rm = FALSE)
sqrt(var(if (is.vector(x) || is.factor(x)) x else as.double(x),
na.rm = na.rm))
<bytecode: 0x000000001c01d8a8>
<environment: namespace:stats>
是否有可能或我必须创建一个包?
【问题讨论】:
-
@thelatemail:除非您认为我的重复,否则您可以发布一个答案,我可以接受。
-
@thelatemail:经过验证,我发现它不适用于打印功能,而仅适用于环境。
标签: r namespaces