《数据科学与大数据技术》训练营: 初级以统计分析为主,工具是R语言;中级是大数据处理+算法+python 课程以实战为主,30%的内容是案例和练习,学完就可以上手http://www.ppvke.com/Blog/archives/45839

【译文】怎样学习R(下)

R语言 PPV课 3307℃

1

何品言翻译,广东科技学院大学生,喜欢R语言和数据科学。

王陆勤审核,从事数据挖掘工作,专注机器学习研究与应用。

英文链接:http://www.r-bloggers.com/how-to-learn-r-2/

PPV课原创翻译文章,转载请注明以上信息及原文链接!

点击查看《怎样学习R(上)》

数据操作

把原始数据转换成具有一定结构的数据对于健壮性分析是很重要的,对是数据符合处理也是很重要的。R有很多的构建函数对原始数据进行处理,但是不是每个时候都能轻而易举的使用它们。幸运的是,有几个R包可以提供很大的帮助:

  • tidyr允许你对数据进行整理,而数据的整理就是看哪一列的数据是变量,同时观察每一行的结果,其本身会把你原来得到的数据转换成易于操作的数据。查看这些不错的资源,你会知道怎样使用tidyr包进行数据的整理。
  • 如果你想进行字符串的操作,你应该学着怎样用stringr,其中的小插图展示的易于理解,而且提供了各种例子供你入门学习。
  • dplyr在处理数据框的对象(在内存和外存中)的时候是一个非常棒的包,而且结合了直观形式的语法结构以加快运行速度。如果想要深入学习dplyr包,你可以在这里收听一下数据操作的课程,同时也可以查阅一下这张小抄。
  • 当你在执行一个繁重的争论任务的时候,data.table将是你的好帮手。它的运行速度极其的快,而且一旦你掌握了这种语法结构,你会发现我每时每刻都在使用data.table包。可以上一下数据分析这门课(来发现data.table包的具体细节,你也可以用这张小抄作为辅助资料。
  • 你是否一直在寻找着能在某个时刻使用时间和数据的机会?这个过程注定是痛苦的,但是幸运的是,lubridate让这样的过程变得简单一些。查看它的小插图可以让你怎样在你的逐日分析中使用lubridate包。
  • 基本R包只能在有限条的性能中处理时间序列数据。幸运的是,这里有zooxtsquantmod。查阅一Eric Zivot写的教材可以让你更容易明白怎样使用这些包,而且也让你更容易处理R中的时间序列数据。

如果你想对R的数据操作进行一个大概的总结的话,更多相关细节可以阅读Data Manipulation with R这本书,或者是RStudio提供的Data Wrangling with R视频教程。如果你在处理数据框的时候遇到相关问题,查看15个容易解决数据库问题的解决方案。

 

数据可视化操作

有一样东西使得R成为一个强大的工具就是强大的数据可视化能力。对于执行R的数据可视化,也许gglpot2是大家了解的最多的包,而且初学者都必须学习的。你可以开始试着从http://ggplot2.org/ 寻找相关的gglpot2包信息,同时查一下相关的小抄和即将出版的书籍。接下来说说gglpot2包,你也可以使用诸如ggvis进行网络交互式图像操作(看相关教材),googlevis包对Google界面的表格(试着回顾一下TED里的一个演讲),R的Plotly包,以及更多。查看任务视图来了解隐含的细节。如果你在进行一些作图任务,也许这些文章对于你来说会有所帮助。

在R,这里有一整个任务视图提示处理空间数据,它允许你绘制一张精美的地图,下面是其中一张非常出名的地图:

05

你要开始查看例如ggmap的使用方法。其中,ggmap包允许你对空间数据进行可视化操作,以及来自于诸如谷歌地图和Open Street 地图那样在统计图像顶端建立的相关模型。或者,你可以开始玩玩maptoolschoroplethr以及tmp。你想要相关的课程,可以上一下 Introduction to visualising spatial data in RR空间数据可视化操作导论)这门课。

你会发现R的可视化操作使用了各种华丽的配色方案,而效果恰好像图像/地图那样逼真……如果你也想要实现你自己的可视化操作,你需要钻研一下RColorBrewer包和ColorBrewer包。

其中一个版本最新的可视化工具就是RHTML小器具。HTML小器具像R的图像一样工作,但是它们创造出了诸如动态地图(leaflet包)、时间数据序列表(dygraphs包),以及交互式图表(DataTables包)。这里有几个在通常情况下都比较好的HTML小器具的例子,以及固体文件有讲到怎样常见属于你自己的可视化操作(不是阅读相关书籍,就是观看相关视频)。

如果你想从可视化接下来能产生什么中得到灵感,你可以看一下诸如FlowingData那样博客,它展示了相关的可视化操作。

 

R的数据科学与机器学习

这里有很多供初学者查看如何进行数据科学的资源。以下是可获得的资源:

还有,如果你想阅读,以下资源比较可靠:

一旦你开始了R的机器学习,你很快会发现你在使用caretrpart,和randomForest。而且幸运的是,这里有很多很棒的资源,在通常情况下课供学习这些包和机器学习。如果你只是一名初学者,这里的向导可以帮助你快速入门。或者,你可以看一下Mastering Machine Learning with RMachine Learning with R这两本书。如果你在看一些一步一步教你学习的教材,引导你对一个实例进行分析的话,你可以上一下Kagle Machine Learning 这门课或Wiekvoet的博客

 

R结果报告

R Mardown是当前比较权威的创作模式,它能从R进行简单的动态记录、展示以及报告。这是一个很好的以可重复方式报告数据分析的工具,因此使得分析变得更加有用和更容易理解。R markdown是基于knitrpandoc的。在R markdown中,R产生了一个最终的文档,并代替了R代码作为最终的结果。这种文档可以以html,word,pdf,ioslides等格式存储。你甚至可以通过使用Shiny来创建一个交互式R mardown文档。这个 Reporting with R Markdown 4小时的课程可以让你了解R mardown,而且此外,你可以使用这样不错的小抄作为你后续用到的资料。

接下来说一下R markdown,你应该要确认你已经查阅过Shiny包。Shiny让R markdown的网络交互式应用的建立变得极其的容易,而你不需要知道HTML、CSS或者Javascript的相关知识。RStudio也维护了一个重要的学习接口让你能开展事业Shiny,包括有一系列的视频教程(点击Shiny学习路线图的要点)。而且,更多尖端的话题也可获知,就让这些例子集那样。

 

06

 

接下来的步骤

一旦你已经可以熟练的编写R代码(同时也对R产生了浓厚的兴趣),你肯定想要更多的感受着它的力量(阅读:做一些漂亮的东西)。在这种情况下,你需要RCPP这个R,他可以让你在R里对C++代码产生更浓厚的兴趣,或者RevoScaleR(可以从收听免费课程开始)。

花了一定的时间写R代码以后(而你也成为R爱好者),你已经到达了可以编写你的R包的水平。

来自Esty的 Hilary Parker曾经写了一本简短的教材来讲述怎样创建你的第一个包,如果你是很在乎这里的话,你需要阅读R 包,一本有Hilary Parker编写的即将出版的书,而它已经可以再网上在线阅读。

如果你想要深入R内部进行相关工作,同时想要提高你的理解能力,从阅读advanced R这本书开始是最好的办法。

最后,再一次在R-bloggers.com访问我们来阅读最新消息以及来自R社区的教材和相关博客。

PPV课大数据

转载请注明:人人都是数据咖 » 【译文】怎样学习R(下)

喜欢 (0)or分享 (0)