3.1 R语言概述
R语言是集数据分析与图形显示于一体的编程语言,是一种专业的统计分析软件。R从根本上摒弃了套用模式的傻瓜式数据分析方式,它将数据分析的主动权和选择权交给使用者本身。数据分析人员可以根据问题的背景和数据的特点,更好地思考从数据出发如何选择和组合不同的方法,并将每一层输出反馈到对问题和数据处理的新思考上。R为专业分析提供了分析的弹性、灵活性和扩展性,是利用数据回答问题的最佳平台。
R语言主要有以下几个特点。
1.R是自由软件
之所以称R是自由软件,是基于它的免费和开源。R是一个用于统计计算的很成熟的免费软件,同时也能提供和其他同类型商业统计软件一样好的功能服务。R还有一个亮点,即它是一款开源软件,用户可以和全球一流的统计专家合作讨论,也可以上传自己的软件包,可以说R是全世界统计学家思维的最大集中地。现如今,开放源代码的软件在科学研究和工程工作中越来越受到追捧。R的开源性使得它从20世纪90年代被开发出来至今,一直在快速发展中。
2.R的兼容性很好
R的兼容性体现在两个方面:一方面,R和其他程序设计语言的语法表述相似,使得有一定编程基础的人学习起来容易,并且它也是彻底地面向对象的统计编程语言,非常容易理解和使用;另一方面,R可以实现与Excel、SAS、SPSS等常用统计软件的数据转换,也可以方便地插入由C语言等编制的计算机程序,这对数据整合工作非常有用。
3.R是数据可视化的先驱
R软件提供了非常丰富的2D和3D图形库,是数据可视化的先驱,能够生成从简单到复杂的各种图形,甚至可以生成动画,满足不同信息展示的需要。
4.不断更新的加载包
Google首席经济学家Hal Varian说:“R变得如此有用和如此快地广受欢迎是因为统计学家、工程师、科学家能够用它精炼代码或编写各种特殊任务的包。R包增添了很多高级算法、作图颜色和文本注释,并通过数据库连接等方式提供了挖掘技术。金融服务部门对R表现出了极大的兴趣,各种各样的衍生品分析包相继出现。R最优美的地方是它能够根据自己的需求修改很多前人编写的包的代码,实际上你是站在巨人的肩膀上。”
正是由于R具有免费、开源、模块多样齐全等众多特点,且在综合R档案网络(Comprehensive R Archive Network,CRAN)中提供了大量的第三方功能包,其内容涵盖了从统计计算到机器学习,从金融分析到生物信息,从社会网络分析到自然语言处理,从各种数据库、各种语言接口到高性能计算模型,可以说无所不包,无所不容,这也是为什么R获得越来越多各行各业的从业人员喜爱的一个重要原因。
类似R的统计软件种类有很多,最常见的有以下5种,它们有各自的优缺点。
(1)SAS:内容全面,价格昂贵,支持编程,是数据处理和统计分析的专用软件。
(2)SPSS:操作简单、无需编程、输出漂亮、功能齐全、价格合理,非统计专业人员的首选软件。
(3)Eviews:具有强大的多元回归和时间序列分析功能,计量专业首选软件。
(4)Matlab:功能强大的编程软件,矩阵运算快,统计分析功能较少,是数值计算和图像处理的首选软件。
(5)Excel:具有简单的统计分析功能,是商务办公软件。
这些软件的共同缺点:其一是“黑匣子”,即源代码不公开,只能运用已有功能,不能根据自身特殊需要进行修改;其二是“傻瓜软件”,对于一些简单分析,傻瓜式操作简便,适用于非统计专业人士,但是进行一些深入分析时就无法胜任或者步骤繁复。