赖江山的博客分享 http://blog.sciencenet.cn/u/laijiangshan 生态、统计与R语言

博文

自学R语言10个简单法则

已有 3843 次阅读 2022-11-5 21:06 |个人分类:常规统计|系统分类:科研笔记

最近,PLoS Computational Biology发表一篇基于加拿大各个大学关于自学R的调查问卷总结出来R语言自学的十个法则,我也很赞同这些观点,也简单列一下这10个原则,并加上原文的链接,希望能给各位要初学R的研究生一定启发。要学R的基本操作,最好不是通过培训被动学习,而是通过自己自动学习效果更好。

https://journals.plos.org/ploscompbiol/article?id=10.1371/journal.pcbi.1010372

法则 1:道路是曲折的(Prepare for a steep learning curve)


学习 R 过程会经常碰到“Error”,努力识别这些错误,并学习如何修复错误是首要任务。请记住,您永远不会完美——即使是最有经验的 R 用户仍然会犯错误,例如忘记函数参数等,他们通常会转向互联网搜索答案。R 语言的流畅性不是永远不会收到报错消息,而是当你收到报错时感觉有能力修复它们(图 1)。当然,有些 bug 的发生并不是因为输入错误的代码,而是因为对函数参数或输出的误解。虽然避免错误消息是很好的第一步,但仔细阅读帮助文档并一次运行一行代码是确保脚本完成预期任务的最佳方法。


图片

图1. 精通 R 并不是要从不犯错误,而是要在遇到报错并解决错误时从容不迫

法则2:花时间看一本书(Take the time to read a book)

学习正确的编程实践的一个好方法是阅读书籍。书的优点是通常代表专家的声音、群体的技能,或两者兼而有之。大多数学习 R 编程的好书都包含代码示例,您可以使用这些示例来提高您的技能。R 用户很幸运能够拥有大量高质量的已出版书籍作为学习资源,其中包括 RStudio 网站 (https://www.rstudio.com/resources/books/)上精选的十多种书籍,以及无数知识渊博作者提供。我们最喜欢学习 R 的一些书籍包括“R for Data Science”[10] 和“Advanced R”[11],它们通过 tidyverse 介绍了 R 的现代方法(参见法则 5)。根据您学习 R 的原因,阅读涵盖与您的兴趣相符的更具体主题的书籍也可能会有所帮助。例如,如果您打算将 R 用于高级统计,您可以求助于诸如“Mixed-effects models and extensions in ecology with R”[12] 或“Generalized Additive Models: An Introduction with R”[13] 等书籍,每个都鼓励对核心编程和统计技能的深刻理解。如果您计划使用 R 通过高质量的 Web 图形来传达结果,您可能会对“Interactive web-based data visualization with R, plotly, and shiny”[14] 感兴趣,其中涵盖了从入门到高级的基于Web 的数据可视化技术。专业书籍存在于各个学科中,可以成为提升特定领域技能的绝佳资源。

法则 3:充分利用免费资源(Use free resources)

学习一门新的编程语言的金钱成本可能令人生畏。你应该买多少本书?您应该参加哪些编码课程?幸运的是,许多高质量的 R 资源都可以免费在线获得,涵盖了您入门所需的所有知识。例如,许多电子书都可以在线免费获得,包括 RStudio 网站上的那些(参见法则2)。

法则 4:通过低压项目快乐地培养技能(Build skills with low-pressure project)

培养技能的一种好方法是通过“只是为了好玩”的项目来练习 R。只是为了好玩的目的可能是培养关键技能的非常有价值的环境。

法则 5:采用良好练习并持之以恒(Adopt good practices and be consistent)

法则 6:使用 CRAN 的任务视图(Use CRAN’s Task View)


在搜索完成特定任务所需的新包时,一个不错的起点是 CRAN 的任务视图 (https://cran.r-project.org/web/views/)。任务视图允许用户按主题浏览已发布的包,包括多变量统计、时空分析、元分析等。任务视图浏览器列出了每个主题的相关包,并提供了指向每个特色包的扩展文档的链接。此资源对 R 初学者以及正在寻找应对新挑战的方法的更有经验的 R 用户很有用。


法则 7:寻求帮助并帮助他人(Ask for help and help others)

在自学 R 时,您可能会遇到自己还不知道如何解决的问题。在这些情况下,寻求帮助可能会为您节省大量时间或适度减轻你的烦恼。当您第一次遇到问题时,搜索引擎中的复制和粘贴“ERROR"可能会将您引导至 Stack Overflow、GitHub 或 R-bloggers 等网站。通常,有人会遇到与您相同的问题,并且可能会找到您可以使用的解决方案。随着您的技能提高,您可能会发现自己处于可以帮助他人的位置。

法则 8:加入 R 社区(Join the R community)


流利地使用 R 语言的最佳方法之一是与他人一起学习。R 社区充满活力,通过会议、聚会和定期在线活动来学习 R 技能。一个很好的起点是在您所在地区搜索本地 UserR 或 RLadies 小组,每个小组在世界各地都有分会,通常会举办技能分享、讲座和编码练习会议。


法则 9:阅读别人的代码,并分享你的代码(Read others’ code, and share yours)


R 的开源文化带来了丰富的代码共享资源。从公开可用的资源中读取和运行代码对于发现新函数、优化处理速度和向专家学习非常有价值。


法则 10:不要让自己局限于R (Don’t box yourself in)


R 是一个很棒的工具,可以用于统计、数据操作、可视化等,但它不一定是你编程之旅的终点。流利的 R 语言将帮助您获得将来适用于其他程序、语言或领域的技能。随着您继续将您的编程技能应用于更广泛的任务,您可能会发现对于某些任务,不同的工具会更有效或更合适。在这些情况下,您在学习 R 时建立的信心和技能可能是您下一次编码工作有用的跳板。你通过学习 R 获得的知识——以及你从自学中获得的经验——将远远超过你手头的任务。


结论


自学新技能可能很困难。这可能是一个充满挫败感、自我怀疑和继续下去的动力不足的过程。我们在此处列出的 10 条法则是我们克服这些挑战、掌握新技术甚至在此过程中获得一些乐趣的最佳策略!我们希望这些法则能够帮助新的 R 用户,无论是研究生、爱好者还是渴望学习新工具的成熟研究人员。我们不坚持让读者一次尝试所有这些法则,也不坚持他们只限于这十个。学习 R 是一个非常个人化的过程——你只需要找到最适合你的方法。


https://journals.plos.org/ploscompbiol/article?id=10.1371/journal.pcbi.1010372




https://blog.sciencenet.cn/blog-267448-1362484.html

上一篇:关于R里面程序包默认的安装的地址问题
下一篇:南京林业大学120周年学术活动“水杉生态统计讲坛(第二讲):零模型”
收藏 IP: 222.129.4.*| 热度|

0

该博文允许注册用户评论 请点击登录 评论 (0 个评论)

数据加载中...

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-11-24 11:59

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部