【R学习路线】怎样学习R?(上)
何品言翻译,广东科技学院大学生,喜欢R语言和数据科学。 陆勤审核,从事数据挖掘工作,专注机器学习研究与应用。 英文链接:http://www.r-bloggers.com/how-to-learn-r-2/ PPV课原创翻译文章,转载请注明以上信息及原文链接! |
这里有无数的资源可以帮助你从不同的方面学R,然而对于初学者的你来说可能会觉得这样让你感到吃不消。而且R又是一门动态语言,它时刻都在变化,所以我们需要时常更新我们的工具以及技术到最新的版本。
这就是为什么R-bloggers和DataCamp合作要写一篇文章来给你怎样开始学习R提供可靠的建议。这篇文章中,每个部分都会介绍不同的并与这个部分相关的资源以及工具,它们可以帮助你入门R并帮助你保持持续的学习动力。这里的材料由文档、网络资源、书籍以及更多的资源混合而成。
就像R那样,学习路线图是一个动态的资源。我们想要持续的发展和改善这些资源而且尽可能的给您提供最好的学习路线图。如果你有什么建议的话,欢迎把你的反馈发到 tal.galili@gmail.com这个邮箱中。
学习路线
入门:R的基本知识
准备好你的机器
R包
把你的数据输入到R中
数据操作
数据可视化
R的数据科学和机器学习
报告相关结果
下一步
入门:R的基本知识
学习R最好的方法就是实践。如果你只是刚刚接触R,由DataCamp相关人员编写的 free introduction to R tutorial(R的免费入门教程)就是一本很好的教材以及后续要看的Intermediate R programming (R程序设计,里面提供相关脚本)。这些教材都教你如何进行R编程以及互动式学习数据科学,而且你可以按照你自己的方式学习和浏览相关信息。在你做学习过程中,一旦提出了你不懂的问题,你就能马上得到相关的提示,而且都很有用。
另一个R的网上互动式学习教材就是O’reilly代码学校网站,名叫Try R,你可以从这里获取相关资源。而比较好的一个线下学习资源是swirl,一个R包,能让你快乐学习并且可以在短时间内掌握R编程。你可以通过下载相关R包进行swirl的相关课程,同时可以从课程库中选择你需要的课程进行学习。如果你想在入门的时候不想下载任何东西,你也可以选择网络版的swirl课程。
在edX和Coursea这里也有一些很好的在线学习平台教你怎样学习R的基本知识。在edX你可以找一些微软的Introduction to R Programming(R编程导论),这是一门8小时的课程,它主要讲了R最基本的内容已经R的基本语法。在Coursea,你可以找一下 R Programming course by Johns Hopkins,这门课程很热捧。这两门课程都是重点推荐的。
推荐PPV课上面的R语言系列课程:R语言入门、R语言实战、机器学习与R语言实战,
如果你想通过阅读纸质版的教材来学习R或教程,这里也有很多的选择。这里有 introduction to R manual by CRAN(CRAN的R手册导论),同时还有Jared Lander写的R for everyone(每个人的R)或者Robert Kabacoff写的R in action(R语言实战)。
准备好你的机器
你可以从Comprehensive R archive Network(CRAN)那里下载R的安装包。这里有适合Windows、Linux和Mac的二进制安装包。
一旦完成安装R,你可以选择R的控制台环境,或者集成开发环境(IDE)。RStudio是目前为止R集成开发环境中最受欢迎的,同时还支持脚本的调试、工作空间的管理、作图和更多其它功能(你要检查一下你的RStudio菜单栏)。
接下来,RStudio也在R的集成开发环境中给你提供了相关的架构和开发工具。如果你希望能进行图形界面操作,你可以查阅一下R-commander或者Deducer。
R包
R包是推动R的发展和规模扩大的动力,而R包则由一串代码、数据、文档以及易于分析到其它地方的测试组合而成。在你使用R包以前,你需要安装相关的R包。一些R包,诸如基本的R包,会在你安装R的时候自动帮你安装好的。其它的R包,如ggplot2这样的包,不会自动帮你装好,需要你手动安装它们。
很多的R包都已经在CRAN,一个其服务端遍布全世界各地,并且全世界是对R的代码和文档进行同步更新和储存的网络进行过整理并且可以从CRAN那里得到它们。你可以通过编写install.packages脚本轻松的从R内部下载这些包。CRAN也运行了一个任务预览集,它可以确认所有的R包都与其相对的特定任务的联系,就像时间序列那样。
你也有bioconductor,它提供了用于分析高流量的基因序列数的包;同样的,例如github和bitbucket库里的R包开发者。你可以通过使用devtools包轻松从这些库下载相关R包。
寻找R包是困难的,但幸运的是,你可以轻易的从CRAN,github和bioconductor(从R内部使用R文档)中下载相关R包,或者你可以查阅一下有用的R包这个快速列表。
最后,一旦你开始了进行R相关操作,你很快会发现R包之间的依赖关系会导致很多很头疼的问题。一旦面对这样的情况,确认一下packrat(查看录像课程)或者checkpoint。当你需要更新R包的时候,如果你用的是windows操作系统,你可以从installr包中使用updateR()函数。
对R进行数据导入
你可以在R中导入一下所有形式的数据文档:普通形式文件、统计软件文件、数据库和网络数据。
为了能把不同类型的数据导入到R中,你通常需要各种方法来实现它们。如果要学习在一般情况下怎样把各种类型的数据导入到R的话,你可以查阅一下online data Importing into R tutorial(在线把数据导入到R教材)这本教材,而这篇文章会提到RSstudio中的数据导入和相关网络研讨会。
-
普通形式文件通常是以普通文件形式储存表数据,而R的标准分布提供了把这些普通文件导入到R的功能,其数据以数据框的形式展示,而其中有从utils包中提供像read.table()和read.csv()的函数。还有readr这样特殊的R包可以进行R的数据导入,这个包使用便捷,而且其冗余度比utils包低,同时性能上提速了几倍(尤其在包含更多信息的情况下;还有data.table的fread()函数可对R进行数据的导入以及数据的修改(使用fread函数)。
-
如果你想把excel格式的数据文件导入到R,看一下readxl包是一个很好的方法。或者,你还可以使用gdata包,它有支持导入excel格式的数据文件的函数,再或者是XLConnect包。而后者则在Excel和R中起桥梁的作用,这说明你可以对Excel文件进行任何操作,但是你需要在R里进行这些操作。更多细节请查阅把Excel导入到R这篇文章中。
-
诸如SAS、STATA和SPSS那样的软件包都会使用和产生它们各自格式的文件。Hadley Wickham写的haven包可以处理把SAS、STATA和SPSS格式的文件导入到R的问题,而且使用起来很简单。或者,这里有foreign包,它不仅可把SAS、STATA和SPSS格式的文件导入到R,而且还可以进行更多格式的文件导入到R中,如Systat和Weka。同时,也可以把数据以各种形式导出R(提示:如果你处在从用SAS、STATA和SPSS转到用R的阶段,你可以读一下Bob Muenchen的教材)。
-
对于使用什么包来对相关的数据库进行连接和数据导入取决于你想连接哪种类型的数据库。假设你想要连接到MySQL数据库,你需要用RMySQL包。其它类型的就要使用其它的包如RpostgreSQL包和ROracle包。而R函数的话,你可以使用它们进行数据库的访问和相关操作,它在R包中被特别的称之为DBI。
-
如果你想通过R进行网页数据抓取,你需要使用API连接到网络资源,或者通过使用rvest包进行相关操作。如果要开展所有的操作,这里有一个免费的网络资源,这里提供了Rolf Fredheim的博客文章。
请关注“恒诺新知”微信公众号,感谢“R语言“,”数据那些事儿“,”老俊俊的生信笔记“,”冷🈚️思“,“珞珈R”,“生信星球”的支持!