您的位置:首页 > 编程语言 > Python开发

python与R(对比SAS),我该选择哪种工具?

2019-06-13 12:42 281 查看

介绍

我们热衷于比较!

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

那我在这里就抛出一个类似的话题—— SAS和R语言之争可能是数据科学行业可能见证的最大争辩,而Python是现在发展最快的语言之一,自成立以来已经走过了漫长的道路。我开始讨论这个话题不是想看它引爆全场(虽然这也很有趣),而是我知道我们都会从讨论中受益。

这个问题也经常在博客中被人们讨论。所以,我想和大家一起讨论!

在这个问题上讨论的还不够多吗?

可能是! 所以我还是觉得有必要进行讨论,理由如下:

  • 数据科学非常有活力,前两年进行的讨论可能与现在的情况没什么关联了。
  • 传统观念里没有把python列作比较之内,我觉得现在这是个非常值得深思的问题。
  • 虽然我们将讨论有关语言的全球趋势,但我也将添加印度分析行业的相关具体信息(处于不同的发展水平)

好了,闲话少说,让我们开始讨论吧!

背景

下面是一些关于这三个生态系统的简要说明:

  • SAS:SAS一直是商业分析领域无可争议的市场领导者。该软件提供大量统计功能,具有良好的GUI,供人们快速学习,并提供强大的技术支持。然而,它最终变成了一种昂贵的选择,并不总是具有最新的统计功能。
  • R:R是SAS的开源对应物,传统上用于学术和研究。由于其开源性质,最新技术可以快速发布。互联网上有很多相关文档,R是一个非常划算的选择。
  • Python:作为一种开源脚本语言,Python的使用者数量随着时间的推移而不断增长。今天,它集成一些库(numpy,scipy和matplotlib)和几乎所有你可能想做的统计操作/模型构建的功能。自从引入pandas以来,它在结构化数据的操作方面变得非常强大。

属性比较

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

1.可用性/成本

2.易于学习

3.数据处理能力

4.图形功能

5.先进的工具

6.工作场景

7.深度学习支持

8.客户服务支持和社区

我从分析师的角度来比较这些。 因此,如果您正在为您的公司寻找要购买的工具,您可能无法在此获得完整的答案。但是以下信息仍然有用。 对于每个属性,我给这三种语言中的每一种都给出一个分数(1 - 低 ; 5 - 高)。

这些参数的权重,根据您的职业生涯阶段和雄心而有所不同。

可用性/成本

SAS是一款商业软件。对于大多数专业人士而言,这是昂贵的且没有能力以个人身份购买。但是,它在私人企业中拥有最高的市场份额。 因此,除非您在投资了SAS的机构中,否则可能很难接触到SAS。 尽管如此,SAS已经引入了一个可以免费访问的大学版,但它有一些局限性。在那里你也是可以使用 Jupyter notebook的!

另一方面,R&Python是完全免费的。以下是我对此参数的打分:

SAS - 3

R - 5

Python - 5

易于学习

SAS易于学习,并为已经了解SQL的人提供简便的选项(PROC SQL)。 不仅如此,它在其存储库中具有良好的稳定GUI界面。 在资源方面,各大学的网站上都有教程,SAS有全面的文档。 从SAS培训机构出来是可以获得认证的,但它们也是需要一笔花费。

R在3种语言中具有最陡峭的学习曲线。它要求您学习和理解编码。R是低级编程语言,因此简单的过程可能需要较长的代码。

Python因其编程世界的简单性而闻名。 对于数据分析也是如此。,虽然目前还没有广泛的GUI界面,但我希望Python notebooks会变得越来越主流。 它们为文档和共享提供了出色的功能。

SAS - 4.5

R - 2.5

Python - 3.5

数据处理能力

这一度是SAS的优势。 R计算内存(RAM)中的每一个单元,因此计算受到32位机器上的RAM数量的限制。 但是现在已不再是这种情况。 这三种语言都具有良好的数据处理能力和并行计算选项。我觉得这不再是一个很大的区别。 他们都带来了Hadoop和Spark集成,他们也支持Cloudera和Apache Pig。

SAS - 4

R - 4

Python - 4

图形功能

SAS具有不错的功能图形功能。但是,它只是功能性的。对绘图进行任何自定义都很困难,需要您了解SAS Graph包的复杂性。R和Python具有非常先进的图形功能。 有许多软件包可以为您提供高级图形功能。随着Plotly被引入两种语言并且Python带有Seaborn,制作自定义绘图从未如此简单。

SAS - 3

R - 4.5

Python - 4.5

先进的工具

所有3个生态系统都具备所有基本和最需要的功能。 此功能仅在您处理最新技术和算法时才有意义。

由于其开放性,R&Python可以快速获得最新功能。 另一方面,SAS更新了其在新版本推出中的功能。 由于R在过去被广泛用于学术界,因此新技术的发展很快。

话虽如此,SAS在受控环境中发布更新,因此它们经过了充分测试。 另一方面,R&Python有开放的贡献,并且在最新的发展中存在错误的可能性。

SAS - 4

R - 4.5

Python - 4.5

工作场景

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

下图显示了蓝色的R和橙色的SAS:


这个图表现了另一个方面,蓝色的R与橙色的python:


总的来说,语言的市场可以用下图表示:

SAS – 4

R – 4.5

Python – 4.5

客户服务支持与社区

R和Python拥有最大的在线社区,但没有客户服务支持。 所以,如果你遇到麻烦,你就是靠自己。 你会得到很多帮助。另一方面,SAS提供专门的客户服务与社区服务。 因此,如果您在安装或任何其他技术挑战方面遇到问题,可以与他们联系。

SAS – 4

R – 3.5

Python – 3.5

深度学习支持

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已成为当今初创公司的明显选择。它也是深度学习的最佳选择。

这是最终的得分表:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: