【问题标题】:Load a .RData generates a large function instead of data frame加载一个 .RData 生成一个大函数而不是数据框
【发布时间】:2018-07-03 06:25:36
【问题描述】:

我正在尝试加载 .RData 格式的数据框。我正在使用load(),如here 所示。当我在我的环境中获取对象时,它被加载为一个显示以下输出的大函数:

>  load("bsas_short.RData")
>  data
  function (..., list = character(), package = NULL, lib.loc = NULL, 
     verbose = getOption("verbose"), envir = .GlobalEnv)

我想知道为什么它加载为一个大的function 对象而不是data.frame

【问题讨论】:

  • data 是 utils 包中的一个函数。如果环境中没有其他同名对象,将显示此功能。您可以使用ls() 检查本地环境中的所有对象。也许你的数据在那里,但有另一个名字。
  • 谢谢,潘。我这样做了,但我拥有的唯一对象是数据。应该有“bias_short”,但似乎没有正确加载。
  • 可以保存您的数据对象的.RDS 吗?如果是这样,那么您可以使用任何所需的名称导入它。
  • 这很奇怪。您可以尝试getAnywhere("data") 查看所有名为data 的对象。您可以使用class(data) 检查数据类别(这可能会返回function,因为您在当前环境中显然会看到)。也许.RData 坏了,但我无法重现。
  • 这是我的第一个猜测,但事实并非如此。我已经加载到另一台机器 (PC) 并且可以工作。

标签: r


【解决方案1】:

要导入 RData 文件并对其执行操作(例如查看或其他查询),请执行以下操作:

df <- get(load("bsas_short.RData"))

【讨论】:

  • 虽然此代码 sn-p 可能是解决方案,但 including an explanation 确实有助于提高您的帖子质量。请记住,您是在为将来的读者回答问题,而这些人可能不知道您提出代码建议的原因。
猜你喜欢
  • 2015-04-15
  • 2016-07-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-01-31
  • 1970-01-01
  • 2013-02-21
相关资源
最近更新 更多