r - 列出全局环境中的数据框名称

标签 r function dataframe

这个问题在这里已经有了答案:





How can I make a list of all dataframes that are in my global environment?

(6 个回答)


去年关闭。




我正在尝试编写一个函数来列出全局环境中数据帧的名称。
我可以通过使用代码来做到这一点:

l<-ls()
l[sapply(l, function(x) is.data.frame(get(x)))]
我需要将其转换为一个我可以轻松调用的函数。

最佳答案

你必须知道ls()默认情况下列出当前环境中的对象。如果将代码包装在函数中,则当前环境是内部函数环境,此时它是空的(我们位于函数的第一行,尚未定义任何内容)。由于您对全局环境感兴趣,因此您必须使用 .GlobalEnv 明确指定这一点。 :

lsf <- function() {
  l<-ls(.GlobalEnv)
  l[sapply(l, function(x) is.data.frame(get(x, envir = .GlobalEnv)))]
}

lsf()

关于r - 列出全局环境中的数据框名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63723690/

相关文章:

r - 与密度曲线叠加直方图

r - 在 ggplot2 中执行 geom_hline 时选择最新的数据集

javascript - 如何使用 JavaScript 函数验证单选按钮?

PHP:如何将变量添加到函数名称?

python - 如何在Python中按工作日、月份等对pandas系列时间码进行排序/分组?

python - Holoviews Heatmap 为每个点指定颜色

r - "Error in namespaceExport(ns, exports) : undefined exports"是什么意思?

r - 使用 MuMIn::dredge 时模型无法收敛

c - 创建并返回数组的函数导致问题

python - 寻找一种更快的方法在包含另一列行中的字典值的数据框中创建新列