R:语言介绍

R是一个由统计学家开发的免费开源软件,它结合了统计分析、绘图功能以及强大的编程语言特性。R语言在数据分析、金融、生物信息学等领域广泛应用,拥有丰富的程序包和社区资源。尽管在性能和易用性上存在一定局限,但其免费、开放源代码的特性使其在竞争中展现出广阔的应用前景。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


    R是一个有着统计分析功能及强大作图功能的软件系统,是由Ross Ihaka和Robert Gentleman1共同创立。R语言可以看作是由AT&T贝尔实验室所创的S语言发展出的一种方言。因此,R即是一种软件也可以说是一种语言。S语言现在主要内含在由Insightful公司经营的S-PLUS软件中。

    R是在GNU协议General Public Licence下免费发行的,它的开发和维护现在则由R开发核心小组R Development Core Team具体负责。

 

►R语言有许多优点:

• 它是广受关注的统计语言S在公众领域的实现,而且R/S已经是专业统计学家的实际标准语言。

• 在绝大多数情况下,它的功能不亚于甚至优于商业软件,比如它有大量的函数、良好的可编程性、强大的绘图功能,等等。

• 在Windows、Mac、Linux等操作系统上都有相应的版本。

• 除了提供统计操作以外,R还是门通用编程语言,所以你可以用它做自动分析、创建新的函数来拓展语言的现有功能。

• 它结合了面向对象语言和函数式编程语言的特性。

• 系统在两次会话之间可以保存数据集,所以不需要每次重新加载数据集。R还可以保存历史命令。

• 因为R是开源软件,所以很容易从用户社区获得帮助。另外,用户们贡献了大量的新函数,其中很多用户都是杰出的统计学家。

 

    R 语言是一组数据操作,计算和图形显示工具的整合包。相对于其它同类软件,其特色在于:

• 有效的数据处理和保存机制。

• 拥有一整套数组和矩阵的操作运算符。

• 一系列连贯而又完整的数据分析中间工具。

• 图形统计可以对数据直接进行分析和显示,可用于多种图形设备。

• 一种相当完善、简洁和高效的程序设计语言。它包括条件语句、循环语句、用户自定义的递归函数以及输入输出接口。

• R 语言是彻底面向对象的统计编程语言。

• R 语言和其它编程语言、数据库之间有很好的接口。

• R 语言是自由软件,可以放心大胆地使用,但其功能却不比任何其它同类软件差。

• R 语言具有丰富的网上资源,更为重要的一点是R 提供了非常丰富的程序包,除了推荐的标准包外还有很多志愿者贡献的贡献包,可以直接利用这些包,大大提高工作效率。


►R的社区和资源

    R的发展离不开R的各种社区支持,尤其是R 的官方社区支持。在R的官方网站中,我们可以下载到R语言软件、R的第三方软件包和R 的其他支持软件。R语言的社区资源同其他语言一样丰富,除了官方社区,还有开发者论坛( http://r.789695.n4.nabble.com/ )、R-Journal 列表( http://journal.r-project.org/ )、软件包列表、R语言图书列表以及R 用户组等。

    R是自由软件,因此开发者可以开发自己的软件包,封装自己的功能,然后在CRAN( http://cran.rstudio.com/ ) 上面发布。截止到2014 年2 月,共有5236 个R包在CRAN上面发布。可能很多人会说只有5236 个包,数量太少了。这是因为CRAN 是需要提交申请的,每个包都必须经过R语言小组审核、检查后才会发布出来,而且审核非常严格。高质量是发布一个新的R包的基本要求。由于CRAN 过于严格的审查,让很多开发者选择在RForge( https://r-forge.r-project.org/ ) 上发布R包,还有些R包是基于Github 发布的。

    下面列出与R 语言相关的主要社区和资源。

Ю R官方网站:http://www.r-project.org/

Ю R开发者论坛:http://r.789695.n4.nabble.com/

Ю CRAN:http://cran.rstudio.com/

Ю RForge:https://r-forge.r-project.org/

Ю R新闻和博客:http://www.r-bloggers.com/

Ю 统计之都:http://cos.name/

 

►R的使用者

    R语言早期主要是学术界统计学家在用,后来逐渐被其他很多领域的学者所用。R语言有各种不同的应用领域,包括统计分析、应用数学、计量经济、金融分析、财经分析、人文科学、数据挖掘、人工智能、生物信息学、生物制药、全球地理科学、数据可视化等。

    近几年,由互联网引发的大数据革命让工业界的人开始认识R,加入R。当越来越多的有工程背景的人加入到R 语言使用者的队伍后,R才开始向着全领域发展,逐步实现工业化的要求。现在,R 已不仅仅是学术界的语言,它还是工业界必备的语言。

    下面列出一些推动R语言在工业界发展的R包。

Ю RevolutionAnalytics 公司的RHadoop 产品,让R 可以直接调用Hadoop 集群资源。

Ю RStudio 公司的RStudio 产品,给了我们对编辑软件新的认识。

Ю RMySQL、ROracle、RJDBC 打通了R 和数据库之间的访问通道。

Ю rmongodb、rredis、RHive、rHBase、RCassandra 打通了R 和NoSQL 数据库之间的访问通道。

Ю Rmpi、snow 打通了单机多核并行计算的通道。

Ю Rserve、rwebsocket 打通了R 语言的跨平台通信的通道。

 

►R的不足

    尽管前面说了R的各种优点,但我们依然不能说R就是完美无缺的,因为R也有很多不足。具体来说,R的缺点有下面5 个:

Ю R软件是统计学家编写的,并不如软件工程师编写的软件那么健壮。

Ю R软件的性能,存在一些问题。

Ю R语言很自由,语法命名不太规范,需要花时间熟悉。

Ю R语言的内核编程,要比普通的R 包使用,难度大得多。

Ю R语言结合了很多数学、概率、统计的基础知识,学起来有一定门槛。

 

►R的应用前景

    R可以做所有SAS 能做的事情。SAS 系统全称为Statistics Analysis System,是国际上最知名的商业分析软件工具之一。SAS 用于决策支持的大型集成信息系统,其重要组成部分和核心功能是统计分析功能。在数据处理和统计分析领域,SAS 系统被誉为国际上的标准软件系统,堪称统计软件界的巨无霸。

    R和SAS处于完全的竞争的关系中,R的免费和开放,让R有着更广阔的应用前景。

    下面给出当今R 应用最热门的领域:

Ю 统计分析:统计分布、假设检验、统计建模。

Ю 金融分析:量化策略、投资组合、风险控制、时间序列、波动率。

Ю 数据挖掘:数据挖掘算法、数据建模、机器学习。

Ю 互联网:推荐系统、消费预测、社交网络。

Ю 生物信息学:DNA 分析、物种分析。

Ю 生物制药:生存分析、制药过程管理。

Ю 全球地理科学:天气、气候、遥感数据。

Ю 数据可视化:静态图、可交互的动态图、社交图、地图、热图、与各种JavaScript 库

的集成。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值