写点什么

云时代,编程语言选 R 还是 Python?

  • 2021-06-07
  • 本文字数:2080 字

    阅读完需:约 7 分钟

云时代,编程语言选R还是Python?

本文最初发布于 analyticsvidhya.com 网站,经原作者授权由 InfoQ 中文站翻译并分享。


人类都需要氧气才能生存。但请想一想,我们有几个人为了保护这种生命之源而采取措施来守护自然呢?如今,大自然用一种看不见的病毒 Covid-19 让全世界都意识到了氧气的重要性,因为这种病毒大幅增加了全球医疗领域对氧气的需求。因此,保护​​自然的行为(例如种植树苗等)是我们的宝贵责任,这不仅是为了社会,也是为了我们自己。



就像拯救生命的氧气一样,在技术领域中拯救行业的资产是数据。全球范围内生成的数据量每天都高速增长。科技行业对从数据中获取和挖掘有价值的,有助于业务增长的见解表现出了极大的兴趣。众所周知,数据集中的数据量往往很大。因此,我们不可能像以前那么快地手动处理如此大量的数据,迅速从中获取有价值的见解。因此,行业专家需要新的技术工具来处理这些数据。在数百种技术工具中,R 和 Python 这两项技术一直在云世界中针锋相对。


在本文中,我们将从数据科学的角度讨论这两种编程语言在处理数据方面的利弊。

R vs Python:为什么会引起争议?


总体而言,从初学者到专业级别,Python 和 R 都是数据科学学习者最喜欢的编程语言。两种编程语言有诸多相似之处,都有着很好的表现。


  • 两者都是在 1990 年代初期创建的

  • 由于它们是开源编程语言,因此任何人都可以轻松免费下载和访问它们

  • 它们具有大量的库和专用算法函数,可以处理和解决数据科学和数据分析问题

  • 与 SAS、SPSS、MATLAB 等其他数据分析工具一样,它们在成本和解决复杂问题方面都不会给用户施加限制

  • 两者都提供了对用户友好的工作体验,即使非程序员也很容易理解和掌握

  • 在处理数据科学、机器学习、深度学习、人工智能等领域的问题时,两种工具都时常引入很多新的发明和改进


也就是说,看起来这两种工具不分伯仲,这就是 R 与 Python 引起争议的原因所在。我们再来简单了解一番,更好地理解这一点。

Python 和 R 简介

Python

Python 于 1991 年首次发布,最初由 Guido van Rossum 设计。由于它是一种面向对象的编程语言,因此也称为通用编程语言。它秉承一种强调代码可读性和效率的理念。



如果程序员和技术领域的人们希望将数学和统计知识很好地应用在数据科学领域,那么 python 会是他们的最佳合作伙伴。因此,对于大多数数据科学学习者而言,这是最可取和最受欢迎的编程语言选项。


它有很多专用于机器学习和深度学习的库,这些库都包含在它的库包索引 PyPI 中。这些库的文档也可以在其官方站点上以 Python 文档格式获取。

R

Ross Ihaka 和 Robert Gentleman 是 R 的最初创建者。R 最初于 1993 年发布,是 S 编程语言的一种实现。这种编程语言设计宗旨是在数据分析、统计方法和可视化领域输出有效的结果。



对于数据分析技术来说,R 有着非常富饶的生态。与 python 类似,它在 Composite R Archive Network(CRAN)中有大约 13000 个专门用于深度分析的库包。


它在学者和研究人员中最受欢迎。使用 R 语言中开发的大多数知名项目数都是研究类型的。人们通常使用 R 自己的,称为 R Studio 的集成开发环境(IDE)中使用 R,以获得更好的用户友好体验。

哪款工具更好呢?

人们选择某种编程语言的原因对于 Python 和 R 来说也都是适用的。因此在这两者之间做出选择时需要更为谨慎。在 R 和 Python 中挑选适合自己的选项时,请考虑你所在领域的性质和自己偏好的风格。



如果你的工作性质涉及更多的一般用途代码且研究范围较小,则应该首选 Python;如果你的工作目的涉及研究和概念过程,则应选择 R。Python 是适合程序员的语言,而 R 是适合学者和研究人员的语言。


一切都取决于你的兴趣和背后的热情。一方面来说,python 代码易于理解,并且通常能够执行更多的数据科学任务;另一方面,R 代码使用基本的学术语言,易于学习,并且是可视化数据分析工具的最佳选项。

关键区别




该用哪个?

具体用哪个取决于用户的需求。就 python 而言,它是满足机器学习、深度学习、数据科学和部署需求的最佳工具。它也有用于数学、统计、时间序列等用途的库,但是在商业分析、经济指标、研究类需求方面往往表现不佳。它是生产就绪的语言,因为它可以把我们所有的工作流集成为一个单独的工具。



至于 R,它是满足统计分析和研究需求的最佳工具,具有更高的准确度。这种编程语言中的大多数软件包都是由学者和研究人员创建的,这是额外的优势。因此,它更适合满足统计学家的需求,而非来自计算机背景的用户的需求。不过它也拥有用于数据科学和机器学习的一些很出色的库。毫无疑问,它在探索性数据分析和可视化方面比 python 高出一等。

结论


总体而言,两种编程语言都有类似的优缺点。综合看来,在 Python 和 R 之间做出选择主要基于以下几点:


  • 你的工作主题是什么?

  • 你同事的编程知识如何?

  • 你的工期有多长?

  • 最后是你对哪个领域感兴趣?

作者的话:


Shankar DK(数据科学专业学生):


尊敬的读者,从本文中,我希望你至少应该了解一些如何根据需要在 Python 和 R 之间做出选择的知识。有关进一步的说明和建议,请在 LinkedIn(https://www.linkedin.com/in/shankar-d-k-03470b1a2)上联系我。我请你分享对本文的宝贵意见,这会对我今后的工作有所助益。


原文链接:


https://www.analyticsvidhya.com/blog/2021/05/r-or-python-reasons-behind-this-cloud-war/

2021-06-07 11:155370
用户头像
刘燕 InfoQ高级技术编辑

发布了 1112 篇内容, 共 532.0 次阅读, 收获喜欢 1975 次。

关注

评论

发布
暂无评论
发现更多内容

人工智能:亲手打造的强化学习模型征服游戏世界

测吧(北京)科技有限公司

测试

Pixea Plus for Mac(高效图片浏览器)v5.2激活版

iMac小白

Unity3D 导出的apk进行混淆加固、保护与优化原理(防止反编译)

屏幕截图工具 Snagit mac 2023.2.4中文版

iMac小白

Photoshop 2020 for mac(PS2020)v21.2.5中文激活版

Geek_幻墨成诗

Photoshop 2024破解版 Photoshop2020

数仓实践丨常量标量子查询做全连接导致整体慢

华为云开发者联盟

数据库 后端 华为云 华为云开发者联盟 华为云GaussDB(DWS)

“降本增效”才是选择低代码开发的主旋律

互联网工科生

软件开发 低代码开发 JNPF

如何有效的进行 E2E

优测云服务平台

测试 测试技术

人工智能 | 经典卷积网络模型解析:深度学习中的里程碑

测吧(北京)科技有限公司

测试

Office 2019 v16.78.3激活工具(office2019套件)

Geek_幻墨成诗

Office 2019下载 Microsoft Office 2019

人工智能 | Bug预测新纪元:基于迁移学习的创新应用

测吧(北京)科技有限公司

测试

Photoshop 2024(ps2024最新)v25.1激活版

Geek_幻墨成诗

Photoshop 2024破解版 Photoshop2024下载

超赞!让vue开发效率翻倍的工具分享

秃头小帅oi

Vue 前端

第16届中国R会议暨2023X-AGI大会开幕,和鲸科技分享ModelOps在数据科学平台中的实践与应用

ModelWhale

R语言 数据科学 算法模型 ModelOps 计算平台

人工智能 | 引领未来,掌握图像目标检测:PyTorch带您探索智能时代

测吧(北京)科技有限公司

测试

谷歌访问助手(谷歌浏览器插件)Mac中文版

Geek_幻墨成诗

谷歌访问助手

Reallusion Cartoon Animator for Mac(2D动画设计制作软件) v4.51.3511.1完美激活版

mac

苹果mac Windows软件 Reallusion 2D动画设计制作软件

用 LangChain 搭建基于 Notion 文档的 RAG 应用

Zilliz

Milvus Zilliz AIGC langchain rag

Ableton Live 12 for Mac(音乐制作工具)激活版

iMac小白

软件测试/人工智能|PyCharm常用快捷键指南

霍格沃兹测试开发学社

整车级虚拟标定:降本增效

DevOps和数字孪生

汽车产业 虚拟汽车

自然语言处理技术原理解析

测吧(北京)科技有限公司

测试

软件测试 | 引领未来,掌握模型驱动技术的人工智能革命

测吧(北京)科技有限公司

测试

Final Cut Pro for Mac(fcpx视频剪辑) v10.6.10中文版

Geek_幻墨成诗

Final Cut Pro下载 Final Cut Pro中文版 Final Cut Pro破解版 Final Cut Pro教程 Final Cut Pro

和鲸科技与国科环宇建立战略合作伙伴关系,以软硬件一体化解决方案促进科技创新

ModelWhale

软件 服务器 算力 大模型 计算平台

人工智能 | 计算机视觉迁移学习:开启智能化视野的大门

测吧(北京)科技有限公司

测试

[开源更新]企业级身份管理和访问管理系统、为数字身份安全赋能

小狗围观科幻

云边协同的RTC如何助力即构全球实时互动业务实践

ZEGO即构

边缘计算 实时音视频 MSDN 云边协同 音视频质量

软件测试/人工智能|教你轻松掌握Python输入与输出

霍格沃兹测试开发学社

人工智能 | 无参照模型预测技术:提升模型性能和应用体验的新思路

测吧(北京)科技有限公司

测试

井然有序 | AIRIOT智能安防系统解决方案

AIRIOT

物联网 智能安防

云时代,编程语言选R还是Python?_AI&大模型_SHANKAR DK_InfoQ精选文章