- 介绍
- 这就是为什么
- 摘要
介绍
虽然说Python比R更好对我而言是正确的,但对您来说可能并非如此。 当然,您可能会因为各种原因认为R比Python更有用。 即使您反对我的声明,我仍然希望开始进行对话,以便大家都能看到两种编程语言的好处。 对于数据科学家来说,我相信Python比R具有更多的好处。 我确实意识到R有一些独特而强大的统计库,很可能使Python库黯然失色。 借助使用Python与数据工程师,软件工程师和机器学习工程师进行扩展,整个数据科学过程可以带来更多的积极效果。
下面,我将讨论五个为什么我认为Python比R更好的主要原因。这些原因包括:可伸缩性,Jupyter Notebook,库软件包,集成以及具有成为跨职能团队成员的能力。
这就是为什么
可扩展性
可伸缩性是在数据科学中采用的巨大好处。 由于大多数数据科学家通常会与工程部门的其他员工一起工作,因此建模以及模型的总体流程可以更容易部署。 例如,典型的数据科学家可能只专注于执行建模,甚至可能是一次性输出。 但是,在建模之前有一个步骤很可能需要在训练机器学习模型之前要做。 该步骤是数据工程部分。 在过程的这一部分中,您可以从SQL数据库自动读取新数据,以便在训练时模型始终是最新的。 流程的另一方面是部署方面。 第一次部署模型可能会非常令人生畏,尤其是因为在学校中所讲授的模型不及建模过程那么多。
由于Python,软件工程师和机器学习工程师可以与您并肩工作。
您可以创建气流定向非循环图(DAG),当在特定时间表上有新数据或满足某些参数时,它可以自动训练模型(例如,仅当我们获得100条新的传入数据记录时才训练该模型)。 训练模型后,它可以评估新数据,然后可以通过使用Python将其输出到SQL表中。
Jupyter笔记本
或另一个类似的数据科学可视化工具,能够解释Python。 您可以运行代码单元,注释,创建以及添加可改善笔记本功能的小部件。 您在此处编写和共享的代码是Python。 对于您的数据科学家来说,能够在Jupyter Notebook中使用这种编程语言进行编码是一个巨大的胜利。
第三方库
有几个功能强大且常用的软件包可以使用Python访问。 想到的一些是sklearn(也称为sci-kit学习)和TensorFlow。
Sklearn[2]
这个功能强大的数据科学库具有打包的分类模型和回归模型,可随时用于您的数据集。
—分类
Sklearn对分类的定义是:标识对象所属的类别。 一些流行的算法包括支持向量机(SVM),最近邻居和随机森林。 Sklearn还概述了垃圾邮件检测和图像回归作为其最受欢迎的应用程序使用案例。
—回归
Sklearn对回归的定义是:预测与对象关联的连续值属性。 流行的回归算法包括支持向量回归(SVR)和最近的邻居,其应用包括药物反应和股票价格。
TensorFlow [3]
对于深度学习,该库是我为更复杂的情况建模的必备工具。 这个流行而强大的库可以处理的一些主要项目是:神经网络,通用对抗网络和神经机器翻译。
整合方式
因为我在大多数数据科学项目中都使用Python,所以我成功地将模型.py文件集成到了面向对象的编程格式中。 这些文件以模块化方式有条不紊地开发。 用Python调用API有点简单,因为网站上有太多文档可以帮助获取网站/公司数据。
跨功能
该原因在某种程度上是可伸缩性和集成的结合。 如果您想在本地执行数据科学过程并将输出交给利益相关者,那很好,但是使用Python,您可以与来自工程学的其他专家一起做更多的事情。
当我第一次开始编码时,它是在R中的,当我将我的过程和代码展示给数据工程师和软件工程师以进行部署时,要花一些时间才能准确地描述代码背后的数据科学。
我还将发现与我一起工作的大多数工程师将帮助我部署模型,而他们已经在使用Python,因此即使他们不完全了解该模型的工作原理,他们也可以轻松转换我的数据科学代码。 。
摘要
> Photo by Chris Ried on Unsplash [4].
如您所见,对于选择使用Python的数据科学家来说,有很多好处。 尽管这两种编程语言都非常有用和成功,但从我的个人经验中发现,Python比R更好。这些主要原因包括但不限于:可伸缩性,Jupyter Notebook,库软件包,集成和跨功能。 最终,选择哪种语言取决于数据科学家,但是您的目标是展示我如何在数据科学家项目中使用Python,以及为什么使用Python比R编程更好。