独家 | 从全方位为你比较3种数据科学工具的比较:Python、R和SAS(附链接)

简介: 关于三种数据科学工具Python、R和SAS,本文从8个角度进行比较分析并在文末提供记分卡,以便你随时调整权重,快速做出选择。

翻译:张玲

校对:吴金笛

本文约3000字,建议阅读5分钟。

关于三种数据科学工具Python、R和SAS,本文从8个角度进行比较分析并在文末提供记分卡,以便你随时调整权重,快速做出选择。


简介

我们喜欢比较!

从比较三星、苹果、HTC的智能手机,iOS、Android、Windows的移动操作系统到比较即将选举的选举候选人,或者选择世界杯队长,比较和讨论丰富了我们的生活。如果你喜欢讨论,你所要的就是在一个充满激情的群体中抛出一个相关问题,然后看着它爆炸式地发展!这个过程的美妙之处在于,社区里的每个人都是一个知识渊博的人。

我在这里也引发类似的讨论,比较SAS、R和Python。SAS和R孰好孰坏可能是数据科学领域的最大争论,而Python是目前发展最快的语言之一,自其诞生以来,已经走过很长的路。我开始这个讨论的原因并不是想看它爆炸(不过那也很有趣),而是知道我们都会从讨论中受益。

这也是我在这个博客上最常见的问题之一,所以我会和所有的读者、访客一起讨论这个问题。

SAS

https://www.analyticsvidhya.com/learning-paths-data-science-business-analytics-business-intelligence-big-data/learning-path-business-analyst-sas/

R

https://www.analyticsvidhya.com/learning-paths-data-science-business-analytics-business-intelligence-big-data/learning-path-r-data-science/

数据科学领域

https://courses.analyticsvidhya.com/courses/introduction-to-data-science-2?utm_source=blog&utm_medium=PythonvRvSASarticle

Python

https://www.analyticsvidhya.com/learning-paths-data-science-business-analytics-business-intelligence-big-data/learning-path-data-science-Python/

image.png

关于这个话题不是已经说了很多了吗?

可能是的,但我仍然觉得有必要谈论,原因如下:

  • 数据科学行业是一个充满活力的行业,两年前进行的任何比较都有可能和数据科学不再相关。
  • 传统上,Python不在比较范围内,但现在我认为这不仅仅是一个值得考虑的问题。
  • 在我即将讨论语言全球趋势的同时,我将添加有关印度分析行业(处于不同发展水平)的特定信息。

所以,不要再拖延了,让讨论开始吧!

背景

以下是对3种数据科学工具的简要描述:

SAS:毋庸置疑,SAS一直是商业分析领域的市场领导者。该软件提供了大量的统计功能,具有良好的图形用户界面(Enterprise Guide&Miner),便于人们快速学习,并提供出色的技术支持。然而,最终它成为最昂贵的选择,还不具备丰富的最新统计功能。

R:R是SAS的开源版本,传统上用于学术和研究。由于其开源特性,最新的统计功能很快就会发布,而且互联网上有很多学习文档,R是一个非常划算的选择。

Python:Python作为一种开源语言,它的使用与日俱增。如今,它的扩展程序库(numpy、scipy和matplotlib)和功能几乎可以用于您可能想要进行的任何统计操作/模型构建。自从引入panda后,它在结构化数据操作方面变得非常强大。

比较属性(比较角度)

我将在以下8个属性上比较这些语言:

  1. 可用性/成本
  2. 易学性
  3. 数据处理能力
  4. 图形功能
  5. 工具进展
  6. 工作情形
  7. 深度学习支持
  8. 客户服务支持和社区

我从分析师的角度比较这些,所以,如果你想为公司购买一个工具,你可能无法在这里得到完整的答案,但下面的信息仍然有用。对这三种工具,我就每个比较属性进行评分(1–低;5–高)。

这些比较属性的权重取决于你从事的职业和抱负。

1.可用性/成本

SAS是一种商业软件,很昂贵,对于大多数专业人员(以个人身份)来说仍然遥不可及。然而,它在私营机构中占有最高的市场份额。因此,除非您所在的组织购买了SAS,否则可能很难接触它。虽然,SAS提供了一个免费的大学版本,可以使用Jupyter笔记本,但它仍有一些限制!

另一方面,R&Python是完全免费的。以下是我在这个参数上的评分:

SAS – 3

R – 5

Python – 5

2.易学性

SAS很容易学习,并且为已经了解SQL的人提供了简单的选项(PROC

-SQL)。即使不这样,它的知识库中也有一个很好的、稳定的图形用户界面。在资源方面,各个大学的网站上都有教程,SAS有一个全面的文档。有来自SAS培训机构的认证,但需要花钱才能获得。

在这里列出的3种工具中,R的学习曲线最陡,因为需要你学习和理解编码。R是一种低级编程语言,因此简单的过程可能需要较长的代码。

SQL

https://www.analyticsvidhya.com/blog/2015/03/basics-sql-rdbms/

proc-sql

https://www.analyticsvidhya.com/blog/2015/04/data-exploration-sas-data-step-proc-sql/

Python在编程领域以其简单性而闻名,这对于数据分析也是如此。虽然到目前为止还没有广泛使用的图形界面,但我希望Python notebooks会越来越成为主流,这会为文档和共享提供了很棒的功能。

SAS – 4.5

R – 2.5

Python – 3.5

3.数据处理能力

在过去,这一直是SAS的优势。R在内存(RAM)中进行所有的计算,因此计算受到32位机器上RAM数量的限制,但情况不再是这样了。这三种工具都具有良好的数据处理能力和并行计算选项,我觉得这不再是一个很大的区别。他们都可以集成Hadoop和Spark集成,同时也支持Cloudera和ApachePig。

SAS – 4

R – 4

Python – 4

4.图形功能

SAS具有良好的功能图形功能,然而,只是功能性的。任何对绘图的自定义都是困难的,需要你理解复杂的SAS图形(程序扩展)包。

R和Python都具有非常高级的图形功能,有许多软件(程序扩展)包将为您提供高级图形功能。

现在,随着这两种工具都引入plotly并且Python引入了Seaborn,自定义绘图变得前所未有的简单。

SAS – 3

R – 4.5

Python – 4.5

5.工具进展

这3个工具都具有最基本基本和最需要的所有功能,只有在研究最新的技术和算法时,这个特性才重要。

由于其开放性,R&Python可以快速获得最新特性,而SAS在新版本的推出中更新了其功能。由于R在学术界广泛应用,因此新功能的发展很快。

尽管如此,SAS在受控环境中发布更新,因此它们经过了很好的测试。另一方面,R&Python是开放的,在最新功能的开发中有出错的可能。

SAS – 4

R – 4.5

Python – 4.5

6.工作情形

在全球范围内,SAS仍然是市场领导者,大多数大型组织仍然在SAS上工作。另一方面,R/Python对于初创企业和寻求成本效益的公司来说是更好的选择。此外,据报告,在过去几年里,R/Python相关的工作数量有所增加。这是一个在互联网上广泛发布的趋势,显示了R和SAS工作数量的趋势。用于数据分析的Python工作与R工作具有类似或更高的趋势:

在下图中,蓝色代表R,橙色代表SAS。

image.png

在下图中,蓝色代表R,橙色代表Python。

image.png

数据科学工作中使用的工具分布情况如下:

image.png

SAS – 4

R – 4.5

Python – 4.5

7.客户服务支持与社区

R和Python拥有最大的在线社区,但没有客户服务支持。所以,如果你有麻烦,你就靠自己了。不过,你会得到很多帮助的。

SAS提供了专门的客户服务社区。因此,如果你在安装方面遇到问题或任何其他技术挑战,你可以联系他们。

SAS – 4

R – 3.5

Python – 3.5

8.深度学习支持

SAS的深度学习仍处于起步阶段,还有很多工作要做。

Python在该领域有着巨大的进步,它有许多(程序扩展)包,如tensorflow和keras。

R最近增加了对这些包以及一些基本包的支持。R中的kerasR和keras包充当Python包keras的接口。

SAS – 2

Python – 4.5

R – 3

其他因素:

以下是一些值得注意的要点:

  • Python广泛应用在Web开发中,如果你从事在线业务,使用Python可以同时进行Web开发和分析。
  • SAS过去在部署端到端基础架构(可视化分析、数据仓库、数据质量、报告和分析)方面具有很大优势,但现在可以通过在SAP HANA和Tableau等平台上集成/支持R,这种优势已不再明显。尽管它距离SAS这样的无缝集成还有很远的距离,但这段旅程已经开始。

结论

在今天的情况下,我们看到市场对Python略有倾斜。考虑到行业的动态性,押注什么即将占据上风,时机尚未成熟。根据你的情况(职业阶段、财务状况等),你可以增加你自己的权重,并想出可能适合你的方案。以下是一些特定的场景:

如果你是一个刚进入分析行业的人(特别是在印度),我建议你学习SAS作为你的第一语言。学习容易,就业市场占有率最高。

如果你是一个已经在这个行业中一段时间的人,你应该尝试学习一个新工具来多样化你的专业知识。

对于业内的专家和专业人士,人们至少应该知道其中的两个,这将为未来增加许多灵活性,并打开新的机会。

如果您是初创企业/自由职业者,R/Python更有用。

从战略上讲,具备更多实际操作帮助和培训的企业机构可以选择SAS作为选项。

研究人员和统计学家选择R作为替代方案,因为它有助于进行大量的计算。正如他们所说,R是为了完成工作,而不是为了让你的电脑更轻松。

由于其轻量级的特性和不断增长的社区,Python明显已经成为当今初创企业的选择,这也是深度学习的最佳选择。

下面是最后的记分卡:

image.png

以上是我对这一比较的看法。现在轮到你通过下面的评论来分享你的观点了。

原文标题:

Python vs. R (vs. SAS) – which tool should I learn?

原文链接:

https://www.analyticsvidhya.com/blog/2017/09/sas-vs-vs-Python-tool-learn/

编辑:王菁

校对:龚力

译者简介

image.png

张玲,在岗数据分析师,计算机硕士毕业。从事数据工作,需要重塑自我的勇气,也需要终生学习的毅力。但我依旧热爱它的严谨,痴迷它的艺术。数据海洋一望无境,数据工作充满挑战。感谢数据派THU提供如此专业的平台,希望在这里能和最专业的你们共同进步!

翻译组招募信息

工作内容:将选取好的外文前沿文章准确地翻译成流畅的中文。如果你是数据科学/统计学/计算机专业的留学生,或在海外从事相关工作,或对自己外语水平有信心的朋友,数据派翻译组欢迎你们加入!

你能得到:提高对于数据科学前沿的认知,提高对外文新闻来源渠道的认知,海外的朋友可以和国内技术应用发展保持联系,数据派团队产学研的背景为志愿者带来好的发展机遇。

其他福利:和来自于名企的数据科学工作者,北大清华以及海外等名校学生共同合作、交流。

目录
相关文章
|
9天前
|
数据采集 数据可视化 数据挖掘
利用Python自动化处理Excel数据:从基础到进阶####
本文旨在为读者提供一个全面的指南,通过Python编程语言实现Excel数据的自动化处理。无论你是初学者还是有经验的开发者,本文都将帮助你掌握Pandas和openpyxl这两个强大的库,从而提升数据处理的效率和准确性。我们将从环境设置开始,逐步深入到数据读取、清洗、分析和可视化等各个环节,最终实现一个实际的自动化项目案例。 ####
|
5天前
|
数据可视化 编译器 Python
Manim:数学可视化的强大工具 | python小知识
Manim(Manim Community Edition)是由3Blue1Brown的Grant Sanderson开发的数学动画引擎,专为数学和科学可视化设计。它结合了Python的灵活性与LaTeX的精确性,支持多领域的内容展示,能生成清晰、精确的数学动画,广泛应用于教育视频制作。安装简单,入门容易,适合教育工作者和编程爱好者使用。
47 7
|
7天前
|
数据采集 分布式计算 大数据
构建高效的数据管道:使用Python进行ETL任务
在数据驱动的世界中,高效地处理和移动数据是至关重要的。本文将引导你通过一个实际的Python ETL(提取、转换、加载)项目,从概念到实现。我们将探索如何设计一个灵活且可扩展的数据管道,确保数据的准确性和完整性。无论你是数据工程师、分析师还是任何对数据处理感兴趣的人,这篇文章都将成为你工具箱中的宝贵资源。
|
20天前
|
传感器 物联网 开发者
使用Python读取串行设备的温度数据
本文介绍了如何使用Python通过串行接口(如UART、RS-232或RS-485)读取温度传感器的数据。详细步骤包括硬件连接、安装`pyserial`库、配置串行端口、发送请求及解析响应等。适合嵌入式系统和物联网应用开发者参考。
35 3
|
21天前
|
JavaScript 前端开发 开发者
探索 DrissionPage: 强大的Python网页自动化工具
DrissionPage 是一个基于 Python 的网页自动化工具,结合了浏览器自动化的便利性和 requests 库的高效率。它提供三种页面对象:ChromiumPage、WebPage 和 SessionPage,分别适用于不同的使用场景,帮助开发者高效完成网页自动化任务。
96 4
|
22天前
|
开发者 Python
探索Python中的列表推导式:简洁而强大的工具
【10月更文挑战第41天】 在编程的世界中,效率与简洁是永恒的追求。本文将深入探讨Python编程语言中一个独特且强大的特性——列表推导式(List Comprehension)。我们将通过实际代码示例,展示如何利用这一工具简化代码、提升性能,并解决常见编程问题。无论你是初学者还是资深开发者,掌握列表推导式都将使你的Python之旅更加顺畅。
|
22天前
|
数据采集 数据可视化 数据处理
Python数据科学:Pandas库入门与实践
Python数据科学:Pandas库入门与实践
|
27天前
|
机器学习/深度学习 数据采集 数据可视化
Python在数据科学中的应用:从入门到实践
本文旨在为读者提供一个Python在数据科学领域应用的全面概览。我们将从Python的基础语法开始,逐步深入到数据处理、分析和可视化的高级技术。文章不仅涵盖了Python中常用的数据科学库,如NumPy、Pandas和Matplotlib,还探讨了机器学习库Scikit-learn的使用。通过实际案例分析,本文将展示如何利用Python进行数据清洗、特征工程、模型训练和结果评估。此外,我们还将探讨Python在大数据处理中的应用,以及如何通过集成学习和深度学习技术来提升数据分析的准确性和效率。
|
23天前
|
机器学习/深度学习 数据采集 数据可视化
Python数据科学实战:从Pandas到机器学习
Python数据科学实战:从Pandas到机器学习
|
20天前
|
机器学习/深度学习 数据可视化 数据处理
掌握Python数据科学基础——从数据处理到机器学习
掌握Python数据科学基础——从数据处理到机器学习
33 0