获取在 R 的全局环境中加载的函数列表 [重复]
Posted
技术标签:
【中文标题】获取在 R 的全局环境中加载的函数列表 [重复]【英文标题】:Get the list of functions loaded in R's global environment [duplicate] 【发布时间】:2011-07-03 10:58:17 【问题描述】:可能重复:Is there a way to get a vector with the name of all functions that one could use in R?
嗨
我想从 R 中获取环境中加载的函数列表。
我知道ls()
给出了加载的对象列表。但有些对象不是函数。
我想从函数中清除我的环境,而不是从其他包含我不想丢失的结果的对象(矩阵、数组等)中清除。
有什么想法吗?
【问题讨论】:
重复***.com/q/4267744/429846 ? 不,***.com/q/4267744/429846 是针对来自包的函数,我说的是 ls() 中的函数 我没有注意到,但是是的,它是重复的。曾经尝试过那里给出的解决方案吗?哎呀,我才意识到我什至给出了完全相同的答案。 该答案中提供的解决方案@Joris 与下面提供的解决方案相同。那个 Q 是关于所有可以调用的函数,但是如果您阅读?lsf.str
,您会看到如何仅限制到全局环境,这是默认设置。
好吧,伙计们。确实解决方案是一样的。但问题不同。无论如何,谢谢
【参考方案1】:
好的,我有一个建议
rm(list=ls()[sapply(ls(), function(obj) "function"==class(eval(parse(text = obj)))[1])])
我相信还有更优雅的东西。
【讨论】:
【参考方案2】:见?lsf.str
X <- lsf.str()
as.vector(X) # just for printing purposes, you can use the vector in rm()
rm(list=X)
【讨论】:
@G。格洛腾迪克:或将所有内容组合为rm(list=lsf.str())
以上是关于获取在 R 的全局环境中加载的函数列表 [重复]的主要内容,如果未能解决你的问题,请参考以下文章