什么是R:概述,它的应用和R的用途是什么?
目录
由于今天有这么多的编程语言,有时很难决定选择哪一种。因此,程序员经常面临着有太多好选择的困境。这足以让人们停下脚步,因优柔寡断而瘫痪!
为了消除这种潜在的精神僵局,我们对R编程语言进行了分析。这篇文章涵盖了R编程语言是怎么回事,它适合做什么,它的基础知识和优势,以及我们可以抛出的其他东西,以帮助你做出一个明智的决定。
让我们通过回答这个问题来开启我们的探索之旅。"什么是R?"。
什么是R?
还有什么地方能比R基金会的网站更好地找到这种语言的定义呢?根据R-Project.org,R是"...一种用于统计计算和图形的语言和环境"。它是一种开源的编程语言,经常被用作数据分析和统计软件工具。
R环境由一套集成的软件设施组成,旨在进行数据操作、计算和图形显示。该环境的特点是
- 一个高性能的数据存储和处理设施
- 一套用于数组计算的运算符,主要是矩阵计算
- 一个庞大的、易于理解的、集成的、专门用于数据分析的各种中间工具
- 用于数据分析和显示的图形设施,可以在屏幕上或硬拷贝上使用。
- 完善的、简单而有效的编程语言,具有用户定义的递归函数、循环、条件以及输入和输出设施。
R的语法由三个项目组成
- 变量,用于存储数据
- 注释,用于提高代码的可读性
- 关键词,对编译器有特殊意义的保留词。
R由Ross Ihaka和Robert Gentleman于1993年开发,包括线性回归、机器学习算法、统计推理、时间序列等。
R是一种通用编程语言,与Windows、Macintosh、UNIX和Linux平台兼容。它通常被称为S语言和环境的不同实现,并被认为是高度可扩展的。
什么是R,有什么优势?
R编程语言有很多优点。这里列出了它的一些主要优点
- 它是开源的。不需要任何费用或许可证,所以如果你要开发一个新的程序,它是一个低风险的冒险。
- 它是平台独立的。R可以在所有的操作系统上运行,所以开发者只需要创建一个可以在竞争系统上运行的程序。这种独立性是R具有成本效益的另一个原因!
- 它有很多软件包。例如,R语言在CRAN资源库中存储了超过10,000个包,而且这个数字还在不断增加。
- 它对统计学很有帮助。统计是今天的一件大事,而R在这方面大放异彩。因此,相比其他语言,程序员更喜欢用它来开发统计工具。
- 它很适合机器学习。R是机器学习操作的理想选择,如回归和分类。它甚至为人工神经网络开发提供了许多功能和软件包。
- R让你进行数据处理。R提供了大量的软件包,帮助数据分析师将非结构化的、混乱的数据变成结构化的格式。
- R仍在成长。R不断发展壮大,不断更新和升级,这要归功于一个坚实的支持性社区。
R有什么缺点吗?
什么语言没有?在回答 "什么是R "这个问题时,我们也应该看看R的一些不那么好的方面。
- 它是一种复杂的语言。R有一个陡峭的学习曲线。它是一种最适合于有过编程经验的人的语言。
- 它不太安全。R没有基本的安全措施。因此,它不是一个制作网络安全应用程序的好选择。另外,R不能被嵌入到网络浏览器中。
- 它很慢。R比其他编程语言如Python或MATLAB要慢。
- 它占用了大量的内存。内存管理并不是R的强项之一。R的数据必须存储在物理内存中。然而,越来越多的基于云的内存的使用可能最终使这个缺点变得没有意义。
- 它没有一致的文档/包的质量。文档和包可能是零散的、不一致的,或者不完整的。这就是你为一种没有官方专门支持、而是由社区维护和添加的语言所付出的代价。
R是用来做什么的?
尽管R是一种被许多程序员使用的流行语言,但它在以下方面特别有效
- 数据分析
- 统计推理
- 机器学习算法
R提供了各种与统计有关的库,为统计计算和设计提供了有利的环境。此外,R编程语言被许多定量分析员用作编程工具,因为它对数据导入和清理很有用。
截至2021年8月,R是年度五大编程语言之一,所以它是数据分析师和研究程序员的最爱。它还被用作金融业的基本工具,因为金融业在很大程度上依赖于统计数据。
R在行业中的受欢迎程度
由于其多功能性,许多不同的行业都使用R编程语言。以下是使用R编程语言的行业/学科的列表
- 金融技术公司(金融服务)
- 学术研究
- 政府(FDA、国家气象局)
- 零售业
- 社会媒体
- 数据新闻业
- 制造业
- 医疗卫生
这张图由Stackoverflow提供,让你更好地了解R编程语言在近期的使用情况。鉴于R语言在统计学方面的优势,它在学术界得到大量使用也就不足为奇了,正如图中所示:
如果你想了解具体细节,这里有十个使用R的重要公司或组织,排名不分先后。
- 空中旅馆(Airbnb
- 微软
- Uber
- 脸书
- 福特
- 谷歌
- 推特
- IBM
- 美国运通
- 惠普
什么是最受欢迎的R包?
R包被定义为R函数、采样数据、文档和编译代码的集合。这些元素被存储在R环境中一个名为 "库 "的目录中,并在安装时默认安装。
R包通过改进现有的功能来提升R的力量,将R的功能集合成一个单元。此外,R包是一种可重复使用的资源,这使程序员的生活变得更加容易。
这里有一张图表,根据所问问题说明最受欢迎的R包,再次由Stackoverflow提供。
什么是R,有哪些流行的R书籍
尽管互联网文章大受欢迎(咳咳!),但印刷品并没有死。因此,你可以找到许多优秀的书籍,它们都非常好地涵盖了R编程语言。以下是一份优秀的 "印刷品 "资源清单,以帮助完善你的R语言技能和对R的理解。
- A First Course in Statistical Programming with R. Braun, W. and Murdoch, D. (2007).剑桥,马萨诸塞州。剑桥大学出版社。
- R for Data Science:导入、整理、转换、可视化和建模数据。Wickham, H.(作者), Grolemund, G. (2017).O'Reilly Media.
- 用数据编程。A Guide to the S Language.Chambers, J. M. (1998).Murray Hill, NJ: Bell Laboratories.
- Introductory Statistics with R (2nd edition).Dalgaard, P. (2008).New York:Springer.
- A Handbook of Statistical Analyses Using R. Everitt, B., and Hothorn, T. (2006)。Boca Raton, FL:Chapman & Hall/CRC.
- Learning R: A Step-by-Step Function Guide to Data Analysis.Cotton, R. (2013).O'Reilly Media.
- R for Everyone:高级分析和图形。Lander, J. (2017).Addison-Wesley Professional;第二版。
- Linear Models with R. Faraway, J. J. (2005).Boca Raton, FL:Chapman & Hall/CRC.
- Extending the Linear Model with R: Generalized Linear, Mixed Effects and Nonparametric Regression Models.Faraway, J. J. (2006).Boca Raton, FL:Chapman & Hall/CRC.
- An R and S-Plus Companion to Applied Regression.Fox, J. (2002).Thousand Oaks, CA: Sage Publications.
- R for SAS and SPSS Users.Springer Series in Statistics and Computing.Muenchen, R. A. (2009).New York:Springer.
- R Cookbook:数据分析、统计和图形的成熟配方》。Long, J.D. and Teetor, P. (2019).O'Reilly Media;第2版。
- R图形。Murrell, P. (2005).Boca Raton, FL:Chapman & Hall/CRC.
- S和S-Plus中的混合效应模型。Pinheiro, J. C. and Bates, D. M. (2004).New York:Springer.
- Data Manipulation with R. Spector, P. (2000).New York:Springer.
- Modern Applied Statistics with S. Venables, W. N., and Ripley, B. D. (2002).第四版。New York:Springer.
什么是R,哪种语言更好?Python或R?
根据StatisticsTimes的数据,截至2021年8月,C是顶级的编程语言(R在名单上排在第四位)。但是,Python和R都很流行,并有各自的追随者。但是哪一个是最好的呢?
正如你所期望的,答案并不那么简单。有一些因素需要考虑。因此,当你思考你的选择并找出最好的语言时(对你来说),请问你自己这些问题:
- 我有多少编程经验?Python有一个简单的学习曲线,是初学者的理想选择。R的高级、复杂功能使它更适合有经验的程序员。
- 我希望这门语言能完成什么?Python最适合于机器学习和大规模操作,如网络应用中的数据分析。R在统计学习中大放异彩。
- 图表和图形对我重要吗?R语言应用程序非常适合使用醒目的图形来呈现你的数据,而Python应用程序最适合在工程环境中进行整合。
- 我周围的人在用什么?Python是一种面向生产的语言,最适合于许多不同的工程、研究和工业工作流程。R最适合作为统计工具,是学术界、科学家和工程师的理想选择。