Python可能是R的第二选择,但它的受欢迎程度和易用性使它在数据科学中占据主导地位。
"当[Netflix的数据科学团队]开始时,有一种单一的数据科学家,"Netflix个性化体验创新总监克里斯蒂娜-多伊格说。"现在,这个角色已经被整合到组织中。"这不仅仅是Netflix的事情。在所有行业中,企业都在拥抱数据科学,以打造个性化的、有吸引力的体验,优化定价,以及更多。在这样做的时候,他们正在将数据科学的使用扩展到产品管理、市场营销和其他领域。
这就是为什么企业用来解读数据的语言将越来越多地是Python,而不是R。随着企业寻求更多不同的群体来帮助数据科学,Python的大众吸引力使其容易上手。
R还是Python?
历史上,如果你想做数据科学,你需要知道R。正如在R项目的网站上所详述的,"R是一套用于数据操作、计算和图形显示的综合软件设施"。它本身并不是一种真正的编程语言,但包括了一种编程语言。R最初是为统计和数字分析而建立的,它一直忠实于这些根源,并且仍然是一个优秀的工具,特别是对于作为数据科学家的统计学家来说。鉴于数据科学的发展已经远远超出了统计分析领域,这一优势也可能是一个弱点。
诚如Anaconda的副产品经理Sheetal Kalburgi所指出的,"数据科学家的技术性和统计性更强",并经常 "负责开发复杂的统计算法,以沟通产品性能,预测结果,设计A/B测试等实验,以及优化计算操作等任务。"但他们也倾向于精通编程,这就是你的普通数据科学家更有可能拥有编程背景而不是硬核统计背景。
即使一个公司的业务问题以统计学为中心,也往往会证明Python的优势,如果只是因为熟悉的话。正如Python软件基金会的总顾问Van Lindberg告诉我的,"Python是所有语言中第二好的。R可能是统计方面最好的,但Python是第二......而且是[机器学习]、网络服务、shell工具和(在此插入用例)的第二好的。如果你想做的不仅仅是统计,那么Python的广泛性是压倒性的胜利"。
没有人真的想要银牌而不是金牌,但在这种情况下,第二名意味着Python将使自己对更多的用例有用。正如Anaconda的CEO Peter Wang在采访中所说,"Python从一开始就有更广泛的范围"。工程和科学的DNA被 "烘烤到Python的核心"。因此,它将比R更经常地成为正确的答案。
Python吞噬了数据科学
这并不是对R的批评,而是对Python的发展势头和质量的认可。根据SlashData最近对20000多名开发者的调查,Python是开发者的宠儿,在受欢迎程度上仅次于JavaScript。这部分源于围绕Python的巨大社区,该社区将Python的效用扩展到各种领域(深度学习、人工智能等),同时在关键领域对其进行微调以提高性能。越来越难找到任何领域的Python没有被推为首选,而不仅仅是 "第二好",用Lindberg的话来说。
Python的流行部分源于它的易用性。鉴于企业正在拼命寻找数据科学人才,最简单的途径是对现有员工进行培训。即使是那些没有工程背景的人也很容易接受Python的简单语法和可读性,并欣赏它对快速原型设计的作用。
最近,由于Anaconda发布了PyScript,Python的易用性变得更加容易,它使前端开发者更容易接受Python,因为它可以在HTML中编写Python来构建Web应用程序。这只是Python社区一长串创新中的又一个创新,以扩大开发者和数据科学家用Python可以做的事情的广度和深度。
这些创新,以及从中受益的Python社区,使使用Python的决定变得越来越容易。对于R或其他替代品可能是首选的领域,Wang认为Python作为一种伟大的胶合语言的历史意味着 "也许有人会建立一个漂亮的Python包装器来暴露一个薄薄的垫片来暴露一些R的能力",或者以其他方式使数据科学家很容易用Python构建,同时增加其他社区的补充,如R。
所有这些都有助于解释为什么Python看起来会帮助推动数据科学的下一个十年,因为它对有经验的数据科学家和经验不足的有志之士来说是多么强大。