知牛微课堂:大数据时代中的R编程语言

TIOBE 2014年12月份编程语言排行榜中显示, R编程语言受大数据影响,备受业界追捧,市场份额一度攀升,已到排行版12位,而去年同时间为38位, R语言有望成为今年TIOBE年度语言的候选者。

R语言到底是神马东东?知牛微课堂与您一同了解下吧。

R语言初窥

R语言是用于统计分析、绘图的语言和操作环境。R是属于GNU系统的一个自由、免费、源代码开放的软件,它是一个用于统计计算和统计制图的优秀工具。

R是统计领域广泛使用的诞生于1980年左右的S语言的一个分支。可以认为R是S语言的一种实现。而S语言是由AT&T贝尔实验室开发的一种用来进行数据探索、统计分析和作图的解释型语言。最初S语言的实现版本主要是S-PLUS。S-PLUS是一个商业软件,它基于S语言,并由MathSoft公司的统计科学部进一步完善。后来Auckland大学的Robert Gentleman和Ross Ihaka及其他志愿人员开发了一个R系统。由“R开发核心团队”负责开发。 R的使用与S-PLUS有很多类似之处,这两种语言有一定的兼容性。S-PLUS的使用手册,只要稍加修改就可作为R的使用手册。所以有人说:R,是S-PLUS的一个“克隆”。

R是基于S语言的一个GNU项目,通常用S语言编写的代码都可以不作修改的在R环境下运行。 R的语法是来自Scheme。R语言是开源的,对所有人是完全免费,自由使用,R语言源代码托管在github上;可以运行在多操作系统中,如Windows、Linux和UNIX等。

R语言资源:

  • 主页:http://www.r-project.org
  • CRAN: http://cran.r-project.org
  • 国内镜像:
  • http://mirror.bjtu.edu.cn/cran/
  • http://mirrors.ustc.edu.cn/CRAN/
  • http://mirror.lzu.edu.cn/CRAN/
  • http://mirrors.xmu.edu.cn/CRAN/

R优势及特点

R是一套完整的数据处理、计算和制图软件系统,提供了广泛的统计分析和绘图技术环境:包括线性和非线性模型、统计检验、时间序列、分类、聚类等方法。,包括若干统计程序和强大的各种数学计算、统计计算函数库,用户可以简单地指定数据库和若干参数进行进行一个统计分析,也可以灵活机动的进行数据分析,创造出符合需要的新的统计计算方法。

从 R 语言的发展历史上看,R 主要是统计学家为解决数据分析领域问题而开发的语言,因此 R 具有一些独特的优势:

  • 有效数据存储和处理系统;
  • 拥有一整套数组和矩阵的操作运算符(其向量、矩阵运算方面功能尤其强大),统计学家和几乎覆盖整个统计领域的前沿算法(3700+ 扩展包);
  • 完整连贯的统计分析工具;
  • 高质量、广泛的统计分析、数据挖掘平台
  • 重复性的分析工作(Sweave = R + LATEX),借助 R 语言的强大的分析能力 + LaTeX 完美的排版能力,可以自动生成分析报告;
  • 优秀的统计制图、绘图功能,制图具有印刷的素质,也可加入数学符号;
  • 一种相当完善、简洁和高效的程序设计语言:可操纵数据的输入和输出,可实现分支、循环,用户可自定义功能;
  • R语言是彻底面向对象的统计编程语言;
  • R语言和其它编程语言、数据库之间有很好的接口;
  • 开放的源代码(free, in both senses),可以部署在任何操作系统,比如 Windows, Linux, Mac OS X, BSD, Unix强大的社区支持
  • 方便的扩展性
  • 可通过相应接口连接数据库,如 Oracle、DB2、MySQL
  • 同 Python、Java、C、C++ 等语言进行互调
  • 提供 API 接口均可以调用,比如 Google、Twitter、Weibo
  • 其他统计软件大部分均可调用 R,比如 SAS、SPSS、Statistica等
  • 甚至一些比较直接的商业应用,比如 Oracle R Enterprise, IBM Netezza, R add-on for Teradata, SAP HANA, Sybase RAP

R的功能能够通过由用户撰写的套件增强。增加的功能有特殊的统计技术、绘图功能,以及编程界面和数据输出/输入功能。这些软件包是由R语言、LaTeX、Java及最常用C语言和Fortran撰写。其中有几款较为常用,例如用于经济计量、财经分析、人文科学研究以及人工智能。

与Matlab相比,R更具备开放性

  • R是自由软件,Matlab是商业软件;
  • R可以方便的通过“包”进行扩展,R的核心只有25个包,但是有几千个外部包可以调用,当然你也可以开发自己的;
  • R语言比Matlab的要强大;
  • R和其他编程语言/数据库之间有很好的接口;其他语言也可以很方便的调用R的API和结果对象。
  • R常用于金融和统计领域。大多数人使用R就是因为它的统计功能,R的内部实现了很多经典的or时髦的统计技术。

效果演示

通过一个简单的例子,让R看起来更直观。

在R的控制台输入如下命令:

> install.packages(‘quantmod‘) # 安装quantmod包

> require(quantmod) #引用quantmod包

> getSymbols("GOOG",src="yahoo",from="2013-01-01", to=‘2013-04-24‘) #从雅虎财经获取google的股票数据

> chartSeries(GOOG,up.col=‘red‘,dn.col=‘green‘) #显示K线图 > addMACD() #增加MACD图

就能够看到下图的效果了:

时间: 2024-08-04 09:23:29

知牛微课堂:大数据时代中的R编程语言的相关文章

【原创】搜索引擎在大数据时代中的变革

现代的人类学习.生活.工作都已经离不开搜索引擎,如今的数据大爆炸时代,搜索引擎已经不仅是帮助用户从海量信息中找到结果,更是一种互联网服务.搜索引擎成为一个数据工厂,通过大数据挖掘,抽象结构化有价值的信息,加速信息流动,促使搜索为用户提供更多服务以及更高价值. 让用户对搜索结果进行筛选的时代很快就会被抛弃在时代的浪潮中,当前大数据时代研究最多的深度学习也是研究搜索引擎能够直接命中用户答案的途径之一,『所搜即所得』成为搜索引擎在大数据时代变革中的必然发展趋势. 除此之外,在大数据背景下,搜索引擎可以

深入分析大数据时代中的数据仓库技术

大数据背景 众所周知,当前是一个数据爆炸的时代,大数据背景下的数据治理是每一个企业应该重点考虑的问题.例如金融机构.电信运营商这种"传统"行业每日需要处理的数据量都已经十分巨大了,中小型互联网公司都已经握着上千万日活了,就更不要说腾讯,阿里这样的互联网巨头. 传统行业的数据治理 以电信运营商为例,一个省级的电信运营商在好多年前一年积累的信息量就已经达到数个PB了,在数据爆炸的时代,我们通过移动互联网随时随地就可以surfing everything,数据爆炸的程度估计可以用指数建模了.

大数据时代不可能匿名

大数据近几年一直很火,不过隐私也成了关注点.大数据会收集人们高度隐私的数据,比如医疗记录或购物记录,再通过“分离识别”程序来匿名.如此一来,人们就不用担心个人隐私泄露了.不过事情真那么简单吗? 大数据时代的匿名化并非100% 普林斯顿的计算机科学家艾文德奈瑞 · 亚南,曾在2006年发表的一篇文章中称,在本该匿名的互联网电影数据中,Netflix用户的各种租借历史数据却能在交叉引用过程中被泄露.亚南登在7 月9日的一份报告中称,匿名化支持者们(认为匿名化可行的人)也许还没预感到当下大数据中的危险

大数据时代的数据存储,非关系型数据库MongoDB

在过去的很长一段时间中,关系型数据库(Relational Database Management System)一直是最主流的数据库解决方案,他运用真实世界中事物与关系来解释数据库中抽象的数据架构.然而,在信息技术爆炸式发展的今天,大数据已经成为了继云计算,物联网后新的技术革命,关系型数据库在处理大数据量时已经开始吃力,开发者只能通过不断地优化数据库来解决数据量的问题,但优化毕竟不是一个长期方案,所以人们提出了一种新的数据库解决方案来迎接大数据时代的到来——NoSQL(非关系型数据库). 为什

《大数据时代的历史机遇-产业变革与数据科学》读后感

这本书,帮助我初步完成了大数据探索之旅.大数据,并不是那么简单,她是一种思维方式,更是一种新的商业模式,是需要社会各界关注的大事件. 新的时代,是信息通信高度发达的时代,是信息无孔不入的时代.在具备自身核心竞争力的同时,对外分享.合作是企业生存和发展的唯一途径.经过多年互联网战国时代的厮杀,市场中逐步确立了"终端+平台+应用"的商业模式,谁能够控制终端,谁就掌握的用户入口,谁就抢得了先机.谁能够为用户提供个性化服务,谁就能够拥有客户,在长尾中赚足利润.而平台作为终端和应用的中枢,可以整

大数据时代的数据存储,非关系型数据库MongoDB(一)

爆炸式发展的NoSQL技术 在过去的很长一段时间中,关系型数据库(Relational Database Management System)一直是最主流的数据库解决方案,他运用真实世界中事物与关系来解释数据库中抽象的数据架构.然而,在信息技术爆炸式发展的今天,大数据已经成为了继云计算,物联网后新的技术革命,关系型数据库在处理大数据量时已经开始吃力,开发者只能通过不断地优化数据库来解决数据量的问题,但优化毕竟不是一个长期方案,所以人们提出了一种新的数据库解决方案来迎接大数据时代的到来——NoSQ

LinkedIn高级分析师王益:大数据时代的理想主义和现实主义(图灵访谈)

转自:http://www.ituring.com.cn/article/75445 王益,LinkedIn高级分析师.他曾在腾讯担任广告算法和策略的技术总监,在此期间他发明了并行机器学习系统“孔雀”,它可以从数十亿的用户行为或文本数据中学习到上百万的潜在主题,该系统被应用在腾讯可计算广告业务中.在此之前,他在Google担任软件工程师,并开发了一个分布式机器学习工具,这个工具让他获得了2008年的“Google APAC 创新奖”.王益曾在清华大学和香港城市大学学习,并取得了清华大学机器学习和

当不再炒作大数据的时候,大数据时代就真的来了

从2015年开始,大数据就已经被移出了Gartner的新兴技术炒作曲线."Big Data"(大数据)一词最早于2011年8月出现在Gartner新兴技术炒作曲线中,当时Gartner预计大数据技术需要2年到5年才能进入企业的实际生产型应用中.从那以后,大数据就迅速被市场热炒,最终在2015年彻底在Gartner新兴技术炒作曲线中消失. 进入2016年,大数据已经进入了实际的企业生产应用,在切实推动企业向数字化转型.另一家市场调查公司IDC则强调,在未来5年中,全球的数据驱动型企业将获

张书乐:“神偷拍”抓了神偷 大数据时代让手规矩点

在大数据时代,每一个人的行为,都会因为数据的细微变化,而出现各种个性化的特征. 文/张书乐 日前,株洲媒体报道了个很正经的本地奇闻,一个扒手扒窃了个女大学生小佳的智能手机,却恰巧被和小佳同行的闺蜜无意间拍了下来,结果报警.登报.摸排.抓获,一切都飞快的完成.而一切的起因,仅仅是两个女生平时有偷拍对方"吃相"丑照互动的习惯. 据说,扒手第二天上街,在报纸上看到自己的照片,吓得哆嗦. 这一幕似乎一直都是在大片中看过,比如系列美剧<疑犯追踪>,各种根据摄像头下不同人的行为举止来判