Git solo数据分析师的R和版本控制
我尊敬的许多数据分析师都使用版本控制。 例如:Git solo数据分析师的R和版本控制,git,version-control,r,Git,Version Control,R,我尊敬的许多数据分析师都使用版本控制。 例如: 见对的评论 然而,我正在评估采用git这样的版本控制系统是否值得 简要概述: 我是一名社会科学家,使用R分析研究出版物的数据。 我目前不生产R包。 我的项目R代码通常包括数千行用于数据输入、清理、操作、分析和输出生成的代码。 出版物通常使用乳胶书写 关于版本控制,我已经读到了很多好处,但它们似乎与solo数据分析师的关系不大 备份:我已经有了备份系统 分叉和倒带:我从未觉得有必要这么做, 但我可以看出它是多么有用(例如,您正在准备多个 基于
- 见对的评论
- 备份:我已经有了备份系统李>
- 分叉和倒带:我从未觉得有必要这么做, 但我可以看出它是多么有用(例如,您正在准备多个 基于相同数据集的期刊文章;您正在准备报告 每月更新一次,等等)
- 协作:大多数时候我是 因此,我自己分析数据 不会得到合作的 版本控制的好处
- 评估和学习版本控制系统的时间
- 与我当前的文件管理系统相比,复杂性可能会增加
我仍然建议像你这样的独角戏使用版本控制,因为有一个安全网来捕捉错误是一件很好的事情 我曾经是一名单独的Java开发人员,现在仍然使用源代码管理。如果我不断地检查东西,如果出了问题,我不能损失超过一个小时的工作。我可以毫无顾虑地进行实验和重构,因为如果出现问题,我总是可以返回到上一个工作版本
如果你是这样的话,我建议你使用源代码管理。学习并不难。我使用R和LaTeX进行经济学研究,我总是将我的工作置于版本控制之下。这就像有无限的撤销。试试Bazaar,它是最简单的学习和使用工具之一,如果你使用Windows,它有一个图形用户界面(TortoiseBZR)
是的,在与他人合作时,版本控制还有其他好处,但即使在单独项目上,它也很有意义。单独开发(任何类型)的版本控制对于以下人员来说都非常有趣:
- 探索历史,并将当前作品与过去作品进行比较
- 并为同一组文件尝试不同的版本
如果您确实需要这些功能,那么您也会得到备份(例如使用)我也做单独的脚本编写工作,我发现它使事情变得更简单,而不是更复杂。备份集成到编码工作流中,不需要单独的一组文件系统过程。学习任何版本控制系统的基础知识所需的时间肯定是值得花费的。您必须使用版本控制软件,否则您的分析将无法完全重现 如果您想在某个地方发布结果,您应该始终能够在生成脚本时重建脚本的状态。假设有一位审阅者在您的脚本中发现了一个错误:您如何知道哪些结果受到影响,哪些没有受到影响
从这个意义上讲,备份系统是不够的,因为它可能每天只执行一次,而且它不会对不同的备份应用标签,因此您不知道哪个版本对应于哪个结果。学习vcs比你想象的要简单,如果学习如何添加文件以及如何提交更改就已经足够了。现在,你可能认为你的工作就是开发代码来完成你想让它做的事情。在使用修订控制系统之后,您会认为您的工作就是在存储库中写下您的遗产,并对其进行出色的增量更改。感觉好多了 版本控制值得付出努力吗 一个大大的是 采用版本控制的主要优点和缺点是什么 优点:你可以追踪你以前做过的事情。对于latex特别有用,因为您可能需要删除的旧段落!当你的电脑死机或者你正在处理一台新的电脑时,你的数据就会恢复正常 缺点:你需要做一些设置 使用R进行数据分析的版本控制入门的好策略是什么(例如,示例、工作流思想、软件、指南链接)
只要开始使用它。我在windows上使用tortoise SVN作为客户端工具,我的部门有一个SVN服务器,我将所有代码和数据(是的,您也将数据放在那里!)放在那里 我觉得对你的问题的答案是响亮的“是”——使用版本控制系统管理文件的好处远远大于实现这样一个系统的成本 我将尝试详细回答你提出的一些问题:
- 备份:我已经有了备份系统