暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

数据科学之语言篇 | Languages for Data Science

链讲堂 2022-07-29
725

作者:尹华杰

来源:链讲堂

ID:gh_ca5f0599df5e


对于初入数据科学领域的新人来说,脑海中浮现的第一个问题可能是:从事数据科学需要懂编程语言吗?没有编程知识,也许你依然能够在这个领域找到一份工作,毕竟如今有一系列的工具供你选择使用。但你如果想在数据科学领域长远发展的话,一定的编程知识和技能值得你拥有。


当你进一步在搜索引擎中输入:数据科学语言(languages for data science),得到的搜索结果可能是:Python,R,SQL,Scala,Java,C++,Julia,Javascript,PHP,Go,Ruby,and Visual Basic等等。这一系列的语言,令人眼花缭乱,甚至茫然若失。几乎每一种语言,我们都能在数据科学领域找到它的身影。每一种语言都有它的优点和缺点,使用者需要做出选择,用合适的语言解决特定的数据科学问题。对于从哪种语言入手学习,我们很难得到准确的答案,因为这取决于你所面对的数据问题,怎么解决,以及客户需求等诸多因素。但在通常情况下,人们会选择Python,R,SQL开始他们的数据科学之旅。


在接下来的篇幅中,我将对上述多种数据科学语言做简单介绍。


  • Python

Python是目前非常流行的数据科学语言,许多大型的机构和公司都在使用Python。Python强调代码的可读性和简洁的语法,对于初学者和使用者来说,它都是很好的选择。以下几点是Python吸引人的地方:

  1. 高级通用编程语言,有广泛的实际应用 

  2. 强大的标准库,提供不同任务的有效工具:
    科学计算的库:Pandas, NumPy, SciPy, and Matplotlib
    人工智能的库:TensorFlow, PyTorch, Keras, and Scikit-learn
    自然语言处理:Natural Language Toolkit (NLTK) 

  3. 全球性的Python社区以及丰富的文档 


  • R

R是免费的自由软件,主要用于统计分析、绘图以及数据处理。R在学术界和工业界都有使用。对于缺乏软件编程背景的人来说,R颇受欢迎。R的优点在于: 

  1. 已形成全世界最大的统计知识库 

  2. 非常强大的面向对象的统计编程语言 

  3. 超过16000个R包供使用(2020) 

  4. R和其他编程语言/数据库之间有很好的接口 

  5. 全球性R社区 


  • SQL (Structured Query Language) 

SQL(结构化查询语言)最早出现于1974年,是为有效管理关联数据库中的数据而设计的。现有的SQL数据库包括:MySQL、IBMDb2、PostgreSQL、SQLite、Oracle等等。SQL是美国国家标准协会(ANSI)制定的标准。如果你学习SQL并使用一种数据库的话,你可以将掌握的SQL知识应用于其它数据库。 


  • 其它语言 

在数据科学领域,除了上述三大语言外,还有许多其它语言供你选择,解决特定的数据科学问题。


Java 

Java最早是由SUN公司(已被Oracle收购)在上个世纪90年代初开发的一种编程语言。它是一种优秀的面向对象编程语言,具有很强的通用性。
一些数据科学领域比较有名的工具是由Java写的,比如Weka(数据挖掘),Java-ML(机器学习库)等。 


Scala 

Scala将面向对象和函数式编程结合在一种简洁的高级语言中。在数据科学领域,用Scala语言开发的应用程序中,最流行的莫过于Apache Spark,它是一个开源丛集运算框架。 


C++ 

C++是一种被广泛使用的计算机程序设计语言。TensorFlow是一个采用数据流图(data flow graphs),用于数值计算的开源软件库,它是基于C++语言开发的,在Python界面上运行,对于没有C++编程经验的用户来说,解决了他们的后顾之忧。大数据管理系统如MongoDB也是用C++开发的。 


JavaScript

JavaScript是一种通用语言,它是万维网的核心技术。对于数据科学,最流行的应用无疑是TensorFlow.js。TensorFlow.js使Node.js和浏览器中的机器学习和深度学习成为可能。R-js项目是JavaScript用于数据科学的另一个出色案例。


Julia

Julia是一种高级通用动态编程语言,它是为了满足高性能数值分析和计算科学的需要而设计的。Julia语言相对比较新,发行于2012年,但是它在数据科学领域被寄予厚望。JuliaDB是一个完全由Julia创建的分析数据库。


文章转载自链讲堂,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论