使用.RData文件

问题描述 投票:8回答:4

我意识到我覆盖了一个花了我一些时间来创建的.R文件。是否有可能在我的.RData中看到我运行的命令?我总是将我的文件保存为外部脚本,之前从未使用过.RData文件,所以我真的不知道该怎么做而且害怕永远丢失它。

r
4个回答
10
投票

你的目录中有一个名为“.Rhistory”的文件吗?此文件可能在Linux系统上隐藏。

阅读帮助页面?历史


10
投票

这不是你的问题的直接答案,但是实用程序员的一些建议一次又一次地帮助我避免这样的情况:

始终使用源代码控制

如果一个进程值得花时间记录.R文件中的步骤,那么它应该受到源代码控制系统的保护。这为您提供了许多重要的好处,其中两个是:

  • 您可以恢复或回放文件,以防止意外删除或修改,一小时后,开始看起来它们毕竟不是一个好主意。
  • 您的工作在一个或多个位置备份。最好在不同的电脑上。

如果您以前从未使用过源代码控制,那么以下是一些可以帮助您入门的资源:

  • Git是一个很好的系统,具有分发的好处,使您的文件很难松散。 gitref.org是了解Git的好地方,GitHub为场外Git存储库提供了很好的托管服务。
  • Mercurial是另一个很好的分布式系统。 Joel Spolsky是这个网站的联合创始人之一,他在hginit.com写了一篇优秀的指南。 Bitbucket是托管异地Mercurial存储库的好地方 - 如果您需要控制对工作的访问,它们甚至允许无限制的私有存储库。

毫无疑问,学习源代码控制是我在编程工具中所做的最有价值的投资。当这种情况第一次出现时,它会自行支付。


2
投票

如果您使用的是GNU / Linux发行版,那么您工作目录中的备份很可能已经存在。您所要做的就是使用:

  • 在bash shell中: ls -a | grep ~$
  • 在R: dir(all.files = TRUE, pattern = "~$")

请注意,仅当您要搜索隐藏文件(以-a开头)时才需要all.files = TRUE.,否则您可以轻松省略它。

但是你应该使用Git或SVN或其他VCS,正如Sharpie已经建议的那样。我会推荐Git(主要是因为GitHub)。虽然这只有在你举办一个开源项目时才有用,否则你将不得不为GitHub服务付费(我想你想跳过那个,对吧?)


0
投票

我相信.RData与运行save.image()时得到的结果相同 - 它会保存您在键入ls()时看到的所有内容您可以通过将其拖入R控制台或运行命令load(".RData")来恢复它

© www.soinside.com 2019 - 2024. All rights reserved.