【问题标题】:Problems saving a workspace in R在 R 中保存工作区的问题
【发布时间】:2015-11-28 02:47:56
【问题描述】:

我是 R 的新手,但我对基础知识的掌握速度很慢。但是,我正在努力保存然后打开我的工作。我保存为 .RData 文件,但该文件在 Windows 资源管理器中显示为简单的“文件”。当尝试将工作区加载到 R 中时,这些文件仅在我将“文件类型”从“.RData”更改为“所有文件”时才会显示,并且它将拒绝打开这些文件。我做错了什么?

另外 - 如果这能正常工作,此方法是否类似于打开已保存的 Word 文档 - 因为一切都与我保存时相同,我可以继续我的工作?

非常感谢

【问题讨论】:

  • 你到底是怎么存钱的?您使用的是默认的 R GUI 还是 RStudio? “拒绝”打开文件究竟是什么意思?你是如何尝试打开它们的?请记住,R 是一种编程语言,它不是文档编辑器。
  • 通过“保存工作区”并使用默认的 R GUI 进行保存。我正在尝试使用“打开工作区”打开它们,当我尝试打开一个文件时,它只会出现一个空白的记事本风格的东西......当我打开工作区时,它们不再是 .RData 文件,只是“文件”。

标签: r


【解决方案1】:

在 R 中,您可以保存两种类型的文件,.RData,称为工作区,包含您在会话中创建的所有对象(数据)。您可以通过在控制台中键入 ls() 来检查工作区中的内容。另一种类型是 .R 文件,它是一个简单的脚本文件,用于保存您的代码。

如果您使用默认的 R GUI,它有助于将 .RData 文件保存在您的工作目录中,即您的输入数据文件所在的位置,然后通过双击 .RData 图标从那里加载您的 R 会话。 然后从 R GUI 中打开您的脚本文件 (.R)。通常,我永远不会在我的工作区中保存任何东西,除非它是计算密集型的并且需要几分钟或更长时间才能通过运行脚本文件中的代码来计算。

还要确保在第一次保存工作区文件时在文件名中保留文件结尾 (.RData)。它通常以蓝色突出显示,一旦您输入文件名,它就会被删除。保留它会用 R 图标标识工作区文件。如果您在没有 .RData 结尾的情况下保存它,您也可以通过单击保存的工作区文件并将 .RData 添加到文件名来手动添加它。保存脚本文件时,您实际上必须自己添加结尾 (.R)。

所以,我写这一切的原因是因为你说你点击了“打开工作区”,据我所知,这并不存在。它被称为“加载工作区”。您是否尝试通过选择“打开脚本”来打开 .RData 文件?

我会在评论部分询问我的最后一段,但没有足够的声誉来发表评论。因此,如果这不能解决您的问题,请告诉我,我将删除答案。

【讨论】:

  • 感谢您的回复。抱歉,是的,我的意思是说“加载工作区”而不是“打开工作区”。问题似乎源于我表面上将我的工作区保存为 .RData 文件,但它立即变成了一个“文件”。当我尝试从 Windows 资源管理器打开这些文件时,它会询问我“您希望如何打开此文件?”并给出程序列表。如果我选择使用 R GUI 打开它带有 'ARGUMENT '(file location)'ignored
  • 好的,我可以通过保存我的工作区不带 .RData 扩展名来重现此错误。然后我的工作区文件看起来就像一个“文件”。当我双击它时,我可以导航以使用 R GUI 打开它,它会给我同样的错误。但是当我点击“OK”时,R 仍然会启动。你能证实这一点吗?所以对我来说,有两种方法可以让它发挥作用。 1) 确保在保存工作区时保留 .RData 扩展名,或 2) 单击看起来像“文件”的工作区文件并手动添加 .RData 扩展名到文件名。然后点击 OK 并“打开”R。
  • 是的,R 将在单击“确定”后启动,但只会打开一个空白工作区。保存工作区时,我似乎不可能保留 .RData 扩展名……它马上就变成了一个“文件”。然而,编辑名称并添加 .RData 似乎确实有帮助。尽管它没有向我显示我以前的所有代码/计算等(除了介绍外衣和“[以前保存的工作区已恢复]”之外,它只是空白 - 但我可以继续我离开的地方。这是应该的还是我应该能够看到我上次会话的所有代码吗?顺便感谢您的帮助
  • 这是一个好消息,你得到了它的工作。但同样,工作区文件 (.RData) 将显示您的代码或您的计算。它只是一个可以保存代码和计算结果(即数据)的地方。相反,您应该保存一个 R 脚本文件 (.R),它是您的实际工作文档。在那里你可以保存代码和做笔记等。另外我建议切换到R Studio,这对用户更友好。如果我的回答对您有所帮助,您可能希望将其作为您问题的答案。
  • 太棒了,现在一切都说得通了。我已经意识到我在更改名称时没有确保将 .RData 添加到文件名的末尾而导致了问题。感谢您的帮助和解释,我会接受这个作为答案。
【解决方案2】:

我正在编写一个用于保存工作空间的 R 代码: 假设我们有一个对象名 x,我们想把它保存在 D 盘,我想把它命名为 zian。

x<-c(1,2,3,4)
write.table(x,"D:\\zian.txt")
  #here I saves a workspace as a txt file
   write.csv(x,"D:\\zian.csv")
  #here I save a workspace as a csv file 
   #or
   save(object,filename="D:\\2nd")
   #here you have a file in D drive name as 2nd and you want to save this object in this file.

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-18
    • 1970-01-01
    • 1970-01-01
    • 2011-06-27
    • 1970-01-01
    相关资源
    最近更新 更多