科学网—[转载]自学R语言的十条干货技巧分享

这10条技巧并不是提供使用R的技术指导,而是提供了构建或磨练R编程技能的实用策略。

学习R就是学习一门新语言,包括词汇、语法、句法,甚至可能是一种新的思维方式,打开一个新的世界。

可以这样说,学习R语言很困难,因为它涉及经常报错,所以这个学习的过程要做好准备,识别这些错误,并最终学习如何修复。

即使是最有经验的人,仍然会犯错误、忘记函数参数,或转向互联网搜索以刷新他们可能已完成多次的任务。

R语言的流畅度不是永远不会收到错误消息,而是当你收到错误消息时感觉有能力修复它们(图1)。当然,有些bug的发生并不是因为输入错误的代码,而是因为对函数参数或输出的误解。

虽然避免错误消息是很好的第一步,但确保脚本完成预期任务的最佳方法是:

仔细阅读文档,一次运行一行代码。

学习正确的编程实践的一个好方法是看书。书的一个优点是它们通常代表专家的声音、社区的技能,或两者兼而有之。大多数学习R编程的好书都包含代码示例,你可以使用这些示例来提高技能。

当书本后面没有答案时,开始或加入阅读小组会很有帮助,而且更有趣(后面第八条会讲到加入R社区)。与同事一起尝试练习,并利用彼此作为网络来提出问题、比较方法并通过复杂的任务进行集体思考。

教科书解决方案也定期在个人博客或网站上在线共享。在线发布自己的解决方案可以让你能够获得反馈,使整个R社区受益(参见第9条)。

R用户其实很幸运,你们已经拥有大量高质量的已出版书籍作为学习资源,其中包括:

RStudio网站

比较推荐的R一些书籍包括“RforDataScience”和“AdvancedR”,它们通过tidyverse介绍了R的现代方法(参见第5条关于风格)。

根据你学习R的目的,去看涵盖与你兴趣相符的,更具体主题的书可能会有所帮助。

例如,如果你打算将R用于高级统计,可以去看这类书,如《使用R的生态学中的混合效应模型和扩展》或《广义相加模型:R简介》,每个都鼓励对核心编程和统计技能的深刻理解。

如果你想用R来画出高质量的Web图形,从而传达结果,可能会需要看《Interactiveweb-baseddatavisualizationwithR,plotly,andshiny》,其中涵盖了先进的基于Web的数据可视化技术的介绍。

那么到底应该买多少本书?

应该选修哪些编程的课程?

是不是需要很大的金钱成本?

别担心,下一章节我们提供一些免费资源供参考。

幸运的是,许多高质量的R资源在线免费提供,涵盖了你可能所需的一切。

例如,许多电子书在线免费提供,包括RStudio网站上的电子书。为了更快地参考,RStudio还提供了几个单页备忘单,每个备忘单都涵盖了一个特定包或编程任务的基本知识,可以作为很好的提醒。

如果你觉得看书枯燥,不容易看懂,那么也可以参考一些别的形式:

在Coursera、edX和freeCodeCamp等网站上也有许多关于R、统计和数据科学的免费课程,TheCarpentries的免费培训材料,甚至YouTube和Twitch等网站上的免费视频教程。

无论是通过博客、互动教程还是视频课程,如果有一种在线方式你觉得最适合的,那么很可能会有这种方式的R资源,只需要搜索一点就可以找到。

例如,魁北克生物多样性科学中心(QCBS)R研讨会系列以英语和法语提供了关于数据可视化、线性模型、多元分析等的介绍性和高级研讨会,并在其网站上免费提供PPT、代码和配套书籍。

爱丁堡大学的编程俱乐部为生态学家和环境科学家提供广泛的课程,从数据处理和统计到地理空间分析和机器学习。

-想学习如何使用ShapeFile进行映射吗?

尝试制作一张你最喜欢的城市的海报,作为墙壁艺术印刷。

-通过API抓取数据?

尝试在Spotify上找出最受欢迎的艺术家的共同品质。

-文本分析?

尝试使用R的文本挖掘包来比较你喜爱的书籍或电视节目的情感关联。

-定制数据可视化?

尝试使用ggplot形状和美学来复制你最喜爱的艺术作品(参见Twitter上的#RecreationThurday)。

仅仅为了好玩,项目可以成为培养关键技能的非常有价值的环境。

低风险的环境会减轻你成功的压力,但当你成功时,会给你新的产品和工作代码,供你下次尝试类似的任务时参考。

参与有趣的社区活动、Twitter挑战或R编码竞赛(更多信息,请第8和9条)将帮你建立坚实的基础,为你的编程道路打开大门,同时选择你喜欢的项目。

如果你更愿意让你的R学习更多的“任务”工作,你可以对现有的项目进行低压力的增加,从而获得新的技能。

尝试通过向现有图添加自定义文本注释来练习HTML呈现,或者通过创建用于交互式数据探索的闪亮应用程序,来升级日常工作流程。

在改进现有工作的同时,寻找扩大技能的机会将有助于你成为更全面的R用户。

培养和维护项目的编程方法和组织系统有助于你和他人的代码清晰一致。

如果在开始新任务时对所有未来步骤都进行了精心规划,那么你就可能会从使用虚拟程序代码开始项目中获益。

*虚拟程序代码是计划完成的操作的简单语言描述列表,在文档中写出,然后逐行翻译为代码。

这种方法的一个好处是,它允许你从头到尾对项目进行概念化,并为你将要编写的每一行代码提供一个离散的目标。

如果说,你更喜欢边做边学,可能更喜欢直接编写代码,观察每一行的输出,并在文本中注释最后一行完成的内容,以较小的增量达到最终目标。

在这两种情况下,对代码进行注释是很重要的,确保将来能够理解当前的想法。

在本文中,编程风格是编写代码时使用的特定函数、包和语法策略的集合。如果你认为R是一种语言,可能会认为你的风格是一种方言;两种风格看起来可能不同,但它们的含义是相同的。

在R中,主要的样式划分通常围绕着:你是使用基本R的典型样式,还是采用R的管道方法以及其他tidyverse原则。

3种代码样式的示例

虽然这些样式并不相互排斥,但它们包含不同的函数集,通常适合不同的语法策略来构造代码。根据你的背景,你可能更喜欢其中一种语法。

例如,如果有在C++或Java等程序中编写代码的经验,则顺序或嵌套语法可能会让你熟悉,而管道函数可能会使代码读起来更类似于用英语编写的句子。

在大多数情况下,只要适合你的,什么样式都可以。

当然,匹配协作者中最常见的代码风格或规程中的标准,对阅读、共享和排除代码故障很有帮助。

有时,可能需要切换样式,以便于最好地完成某项任务,但选择尽可能保持样式一致将有助于确保你和其他人可以解释代码。

R生态系统提供了许多工具来促进项目组织。大多数集成开发环境(IDE)都有“项目目录”的概念;这对于领先的RIDE、RStudio和大多数其他(例如,VScode和Atom)都是如此。

还可以使用包来简化项目目录中的文件路径命名方案。根据你所在的领域,文件夹组织结构可能会有所不同,但随着项目列表的增长,对系统进行批判性思考将简化生活。

此外,保持适当的项目组织将有助于你学习“版本控制”的实践,这是一种跟踪更改和备份代码的系统,正在成为跨科学领域的专业标准。

R的大多数功能都捆绑在特定于任务的包中,但很难知道哪些包存在,哪些包最适用于某些任务。

在R中,用户开发包的主要存储库是CRAN,即theComprehensiveRArchiveNetwork,综合R存档网络。

该资源对于R初学者以及正在寻找应对新挑战的方法的更有经验的R用户非常有用。

自学R时,你可能会遇到自己还不知道如何解决的问题。

知道如何以有针对性的方式寻求帮助,这样你就能够查明问题的根源,并且在理想情况下,帮你避免将来出现类似问题。

当你第一次遇到问题时,复制和粘贴遇到的错误到搜索引擎中,可能会让你访问StackOverflow、GitHub或R-bloggers等网站。

-通常情况下,有人会遇到与你相同的问题,并且可能会找到你可以使用的解决方案。

-如果没有的话,你可能需要发布自己的求助。

在这种情况下,有一些指导原则可以使帖子更高效:

最有用的方法是在示例中生成一个玩具数据集,或者使用内置于R中的数据集(请参阅R中的data()),并逐步删除代码中与要解决的问题无关的部分。

随着技能的提高,你可能会发现自己处于一个可以帮助他人的位置。

在Twitter或StackOverflow这样的地方回答问题是回馈R社区的好方法。

你甚至可以回过头来回答你自己过去问过的问题,这样你的帖子标记为“已解决”,并为下一个遇到同样问题的人留下一个有效的解决方案,帮助自己的同时也能给他人带来便利。

建立R语言流利性的最佳方法之一是与他人一起学习。

R社区充满活力,为学习R技能举办了会议、聚会和定期在线活动。

如果你不属于任何特定群体,R社区在许多社交网络上也很活跃。

R通常在Twitter上与#RStats标签讨论如下图。

一些常见科学编程语言的Twitter讨论流行度

社区的一个很好的切入点可能是以下帐户:

@rstudio、@Rbloggers、@icymi_r、@RLadiesGlobal、@R4DS、@rOpenSci

在Facebook和Reddit等网站上也存在一般和特定领域的R组。你甚至可以参加在线活动,如Twitch上的数据科学节目“切片”,观看专家们在R编程挑战(以及其他语言)中的竞争。

在线找到社区都是了解新功能、了解最新软件包、遇到其他地方可能看不到的提示和技巧的好方法。

最重要的是,保持积极性,继续编写代码。

R的开源文化为代码共享提供了丰富的资源。

一些R项目,如#TidyTuesdayR社交数据可视化项目,鼓励在线代码共享,以帮助用户获得和磨练技能。

其他活动,如每年一度的RStudioShiny竞赛,为用户制造的R产品提供了一个友好竞争的渠道,最终免费提供代码,允许用户阅读、下载和复制获奖应用程序。

如果你发现一个特别好的R产品提供了代码,请自己逐行运行代码,以了解每一行或函数的确切意思,具体起到什么作用。你可能会学到一个新的功能,可以应用于自己的项目,或者有许多方法可以完成相同的任务。

现在,许多学术期刊要求出版物中包含公开可用的数据和代码,其中许多(尤其是自然科学领域)都是用R编写的。通过从已发表的文献中下载材料,你可以了解所在领域的专家如何进行分析,使用哪些软件包,以及他们如何组织代码。

代码共享的通用平台包括GitHub、GitLab和开放科学框架(OSF)。

在线共享你的R代码将进一步增强R社区的开放性,并帮助你成为一名更加专注的代码编写者。

发布代码可能会让人感到害怕,但请记住,对科学界来说,可用代码总是比不可用代码更有价值。

R是一个非常棒的工具,可以用于统计、数据操作、可视化等,但它不一定是编程旅程的终点。

例如,为ShinyApplications设计用户界面(ui)将帮助你建立前端web开发的基础,R的各种文本插件(例如ggtext包)将帮助你练习HTML语法,R的向量操作(apply()和purrr::map()函数族)将构建概念框架以转移到其他编程语言,如Julia或Python。

当你继续将编程技能应用于更广泛的任务时,你可能会发现对于某些任务,不同的工具会更有效或更合适。

在这些情况下,你在学习R时建立的信心和技能可能是下一次编程努力的有用跳板。

通过学习R获得的知识,以及你通过自学获得的经验,将使你受益远远超过你手头的任务。

学习R语言,可能是一个充满挫折、自我怀疑和缺乏继续动力的过程。在这里列出的10条是帮助你克服挑战、掌握新技术的最佳策略,甚至可能在这一过程中获得一些乐趣。

也希望可以帮助初学者,无论是研究生、业余爱好者还是渴望学习新工具的研究人员。

当然也不需要一次尝试所有这些规则,也不局限于这十条,你只需要找到最适合你的方法即可。

THE END
1.电子图书:50本高清经典实用PDF图书电子图书:50本高清经典实用PDF图书 资源目录 ├─三十六计经典故事. ├─世界上下五千年. ├─世界传世名画. ├─世界名人百传. ├─世界文化与自然遗产. ├─世界文明奇迹. ├─世界未解之谜. ├─世界自然奇观. ├─世界通史. ├─中华上下五千年.https://ts.meishishwang.com/323092898295.html
2.电子书下载资源网站汇总资源合集无纸化学习 | 把厚重教材装进iPad里,电子书&教材&课程资源,一步下载;免费下载,这 5 个值得收藏的电子书网站真的绝了!;5个电子书免费下载网站,资源丰富质量高!快收下!;超好用的电子书籍下载网站及电子书阅读软件;刺客边风!电子书下载网站,全网资源一键下载,书迷收藏党https://www.xiaoso.net/t/57638747
3.2024最全国内外免费电子书资源网站汇总2024最全国内外免费电子书资源网站汇总-支持pdf、epub、txt、mobi、doc、awz3等格式下载! 随着科技的进步,传统纸质书籍已逐渐被电子书取代。究其原因主要还是电子书更方便携带,且价格也普遍比实体书便宜。不管你是喜欢看小说、名著,还是学术论文、漫画,只要找到了免费资源下载到你电子书阅读器上,就能随时随地轻松阅读https://www.extrabux.cn/chs/guide/6812927
4.Kindle电子书资源网站及网盘15G资源汇总(持续更新)kindle 电子书下载不用愁,一页精品解您忧。网上流传着很多 Kindle 电子书资源网站汇总,但是有很多都是以讹传讹,相当多的网站要么打不开,要么质量无法保证,为了解决这个问题,Kindle 伴侣在本页集合了一些精选的、更新频率高、质量好的 Kindle 电子书下载类网址资源,都提供 kindle 电子书免费下载,且包含各种格式如 https://m.wang1314.com/doc/webapp/topic/21106673.html
5.史上最全Kindle电子书资源网站汇总Kindle伴侣:网页链接苦瓜书盘作者: 【史上最全Kindle 电子书资源网站汇总】 Kindle伴侣:网页链接 苦瓜书盘:网页链接 Mlook看书:网页链接 Readfree:网页链接 kindle迷:网页链接 掌上书苑:网页链接 益书网:网页链接 Kindle推:网页链接 Kindle读书人:网页链接 看Kindle:网页链接 Project Gutenberg:网页链接https://xueqiu.com/1878306520/66612801
6.优质电子书网站汇总?腹有诗书气自华book/读书小站 为阅读而生,为兴趣分享,阅读不孤读资源汇总我的书库 kindle电子书资源下载,尽在我的书库#内酷网雅书电子书分享的领导者书堆电子书资源库,一起分享阅读的乐趣自考/成考有疑问、不知道自考/成考考点内容、不清楚当地自考/成考政策,点击底部咨询官网老师,免费领取复习资料https://zhidao.baidu.com/question/1956849151627071108.html
7.资源帝电子书导航电子书根据地 519电子书 琳宝书屋 爱书小站 78书库 天浪书屋 跪读网 可可观察 推书阁 三秋书屋 书乐里 在线IT电子书 多读 xx资源网 33文库 Bookle Amazon免费 书籍知识库 SoBooks 逸度机电云 技术电子书 精品电子书 rejoice博客 微米电子书分享 知识库 https://shu.ziyuandi.cn/
8.免费的iPad和kindle电子书资源汇总我自己看kindle是通过ipad看, 下载了一个kindle App, 之前是从amazon购买了季度会员, 但发现自己实在是没有时间做到每天一本书, 或者几天一本书, 这样就有点亏了。 后来我发现了这个免费的方式, 可以下载了电子书资源, 再慢慢看。 如何用iPad看Mobi等格式的电子书 https://www.zealer.com/detail/1111447
9.下载电子图书,有什么好的网站推荐?安娜的档案,白嫖去吧!https://www.zhihu.com/question/4229672030/answer/57395469792
10.高中全科目《一本涂书》新教材版高一高二高三全套复习资料(免费5.网盘直接观看或下载至本地使用。 (如果文件是压缩包,请使用winrar或360解压) 百度网盘链接: https://pan.baidu.com/s/1OFeAXqmNfi4iFGFdoadSrw?pwd=jsca 电子书6 免费资源81 电子书 · 目录 上一篇免费下载|世界名著百部合集https://mp.weixin.qq.com/s?__biz=MzI3MzU5MzUwMg==&mid=2247557600&idx=2&sn=2aba2a36b6684d10ec6cc399f180ad3b&chksm=eaa650714ce3a83447507e85bb5ab2526a3ac9a8f966e8ea33ad21ad0e8a5aeb14228f137e16&scene=27
11.C#编程电子书资源集合C#编程电子书资源集合 网站汇总 需积分: 9 195 浏览量 更新于2024-09-11 收藏 46KB DOC 举报 "C#书籍网站提供了一系列C#学习资源,包括从基础到高级,从理论到实践的各种书籍的电子版下载链接。这些资源涵盖了C#语言教程、编程规范、深入解析、COM+编程、设计模式、游戏开发、高级编程、实例教程、开发者手册以及https://wenku.csdn.net/doc/2cmmfhoqvn
12.电子书资源网电子书资源网一个专业的免费资源网站,致力于为书友提供更全面更优质的电子书下载网站,可提供epub电子书免费下载,免费电子书下载,电子书资源网,mobi电子书免费下载,pdf电子书免费下载,txt电子书免费下载,azw3电子书免费下载,一刻书屋网,幼儿园公开课免费下载,电子书大全等http://www.fans51.cn/
13.[中国鸟类图鉴][赵欣如等][全1册][epub][28M][百度网盘][电子书当前位置: 首页 国配电影社区 电子书&听书 文化科学 正文《中国鸟类图鉴》是“中国之美 自然生态图鉴”系列作品中的一部。本系列图书紧扣“中国”这一主题,从自然科学普及的角度出发,科学系统、面面俱到地为读者展现了中国鸟类全貌,是一部极具知识性、观赏性和收藏价值的中国鸟类大典。 《中国鸟类图鉴》从目、科https://blog.fhmv.com/166006.html
14.电子书资源我的学习信息记录电子书资源 [1] FreeMbook Search: https://freembook.com/ [2] 超星书籍检索工具: https://beta.ssdown.org/ [3] 找书网: https://findbooks.eu.org/ [4] 文渊阁: https://wenyuange.org/ [5] ReadHub: https://readhub.one/ [6]https://kf369.cn/3377.html
15.IT技术学习网站大汇总:涵盖全方位学习资源异步社区是一家由人民邮电出版社创办的IT专业书籍综合社区,也是国内领先的IT专业图书社区,在这里你看到的所有书籍都是和IT有关,图书、电子书、文章、课程,专题统统都有。异步社区于2015年8月上线运营,依托于人民邮电出版社20余年的IT专业优质出版资源和编辑策划团队,致力于优质学习内容的出版和分享,为读者提供优质学习https://www.afxw5.com/48130/.html
16.电子书资源网站合集ZAPRO·杂铺电子书资源网站合集 书籍都是有ISBN的书号大家都知道吧就在背面右下角的条形码哪里,你们只需要知道书号或者书名就可以了,TB卖家都是这样找的,所以你现在知道了,少花了很多冤枉钱~ 资源库网址: 1:http://www.ucdrs.superlib.net/ 2:https://www.iizhi.cn/https://tmioe.com/5837.html
17.电子书网站资源英文原版的电子书和期刊论文 6万+的免费电子书资源 图灵社区 搬书匠 CSDN 书格 FreeBooks4Doctors 计算类 古籍 医学 大量PDF英文原版资源 微信读书 网易蜗牛阅读 鸠摩搜书 书单网 好讀 SoBooks 我爱书籍 亚马逊免费kindle电子书 书源优质 有热门书籍 无需注册 https://gitmind.cn/app/templates/865
18.致力于收集各种免费电子书下载网站学习资源网站常用办公小毛驴资源库 | 一个实用的办公学习导航网站,致力于收集各种免费电子书下载网站、学习资源网站、常用办公软件下载、创意灵感网站,定时更新分享优质网站。https://www.xiaomaolvres.com/
19.精选8个高质量免费电子书下载网站精选8个高质量免费电子书资源网站 “读一本好书,就是在和许许多多高尚的人谈话。”相比于传统书籍,电子书的出现极大地方便了现代人的生活,随时随地打开Kindle或者手机,读一本好书。本文为大家提供了8个免费电子书下载网站,让我们热爱读书,从打开电子设备,利用碎片化时间阅读开始吧。https://lightpdf.cn/websites-download-ebooks-html.html
20.电子书搜索官网,21个电子书资源网站集合,可搜全网任意电子书10个月前发布56800 21个电子书资源网站集合,可搜全网任意电子书 收录时间: 2024-03-02 打开网站手机查看 问答搜索# 电子书搜索 电子书搜索 虫部落电子书搜索,集成了21个电子书资源网站。没有你搜不到的电子书,一个搜索引擎搜不到,那就再换一个~ 数据统计 相关导航http://www.zhil.cc/sites/533.html
21.熊猫搜索导航一站式读书学习导航站熊猫搜书导航熊猫搜索导航,熊猫搜书导航,聚合电子书、文档搜索引擎,一站式搜索导航,方便快速导航搜索全网资源,读书学习必备导航站。https://ebook.huzerui.com/
22.超星超星名师讲坛主讲老师为来自全国重点高校或机构的知名教授、学者;或为著名艺术家、作家、主持人、医生等;又或为各行业知名的一线企业家、实战专家;还有许多海外名师名人,包括诺贝尔奖得主、院士等。 斯人已逝,风采犹存 超星期刊 目前收录了国内期刊7000余种,核心期刊超过1200种,实现上亿条期 https://www.chaoxing.com/
23.宝藏级电子书资源网站TOP5,你一个都不可错过!软件LOREfree 是一个提供免费电子书下载的网站,其目标是为全球读者提供高品质的电子书资源,Lore Free 希望通过区块链技术,打造一个全球范围的高质量知识共享社区,让每个人都能自由地获取到知识,让人人能够自由地免费阅读。 地址:https://lorefree.com 5、影子图书馆:安娜的档案 https://www.lieyouren.cn/jingyan/67928_html&wd&eqid=ad66d8ec0004021e0000000664565880