Apache Zeppelin Notebook和R的交互

介绍

这篇文章的目的是帮助您开始使用 Apache Zeppelin Notebook,它能够知足您用R作数据科学的需求。Zeppelin 是一个提供交互数据分析且基于Web的笔记本。方便你作出可数据驱动的、可交互且可协做的精美文档,而且支持多种语言,包括 Scala(使用 Apache Spark)、Python(Apache Spark)、SparkSQL、 Hive、 Markdown、Shell等等。并且Zeppelin支持本身重写各类语言的插件,是很方便扩展的。git

然而,最新的官方版本是0.5.0,还不支持R编程语言。幸运的是,NFLabs公司作了个开源项目,让我提供了一个R的编译器。这个编译器是让用户可使用自定义的语言作为数据处理后端的一个 Zeppelin 插件。例如在 Zeppelin 使用scala代码,您须要一个 Spark编译器。因此,若是你像我同样有足够的耐心将R集成到Zeppelin中, 这个教程将告诉你怎样从源码开始配置 Zeppelin和R。github

准备工做

  • 咱们将经过Bash shell在Linux上安装Zeppelin。若是您使用的是Windows操做系统,我建议您安装和使用Cygwin终端(它提供功能相似于Windows上的Linux发行版)。web

  • 确保 Java 1.7 和 Maven 3.2.x 是已经安装而且配置到环境变量中。shell

从源代码构建 Zeppelin

第一步:下载 Zeppelin 源代码

去这github分支下载源代码,将这个连接复制并粘贴到你的浏览器:https://github.com/elbamos/incubator-zeppelin/tree/rinterpreterapache

在个人例子中我已经下载并解压文件夹在个人桌面编程

第二步:构建 Zeppelin

假设你是安装在单机,打开你的Terminal,运行下面的代码。若是你是安装在一个集群,会稍微复杂一点,具体步骤 Zeppelin 的文档中找到。后端

$ cd Desktop/Apache/incubator-zeppelin-rinterpreter
$ mvn clean package -DskipTests

这将须要约16分钟构建Zeppelin、Spark,全部引擎包括R,markdown,shell,hive等。(见下图)。浏览器

第三步:启动 Zeppelin

运行如下命令启动Zeppelin:markdown

$ ./bin/zeppelin-daemon.sh start

打开web浏览器,访问http://localhost:8080。此时,您已经准备好开始在 Zeppelin 用代码建立交互笔记本。机器学习

交互式数据科学

第一步:建立一个笔记本

单击下拉箭头旁边的“笔记本”页面,点击“建立新报告”。

给你的笔记本命名或您可使用指定的缺省名称。我命名为“Base R in Apache Zeppelin”。

第二步:开始你的分析

以下图所示,调用R能够用“%spark.r”或“%spark.knitr”标签。首先让咱们用 markdown 写一些介绍。

根据咱们可能须要咱们的分析,如今让咱们来安装一些包。

咱们将使用“flights”数据集显示2013年离开纽约的航班,如今让咱们读取数据集。

如今,让咱们使用dplyr(用管道符)作一些数据操做。

您还可使用条形图和饼图来可视化一些描述性统计数据。

如今,让咱们与ggplot2共舞。

如今,让咱们用caret包作一些统计的机器学习。

最后,绘制几个地图。

结束语

Zeppelin 帮助您使用多种编程语言建立交互式文档和美丽的图表。这篇文章的目的是帮助你配置 Zeppelin 和 R。但愿这牛逼的的项目管理委员会(PMC)的开源项目能够用R引擎发布下一个版本。到时候安装 Zeppelin确定会更快更方便,而没必要从源代码构建。

还值得一提的是,还有另外一个R的编译器是由 Data Layer 提供的。你能够在这里找到说明如何使用:https://github.com/datalayer/zeppelin-R

你能够尝试着两个编译器,而后而后在下面的评论区分享一下你的使用体验。

相关文章
相关标签/搜索