除了R和Python你需要知道的6种数据科学编程语言

file

本文译自:《6 Useful Programming Languages for Data Science You Should Learn (that are not R and Python)》

编译:Skye


总览

您应该为数据科学选择哪种编程语言?以下列出了6种非Python或R的强大工具,这些语言的范围很广,通常在数据科学领域中使用,我们还为每种语言提供了开放源代码库,以帮助您开始进行数据科学项目的各个阶段,例如数据清理,模型构建等。

介绍

“我应该选择哪种编程语言来开始我的数据科学之旅?”

这很容易成为数据科学爱好者最常问的问题。我敢肯定,答案通常在Python和R之间徘徊。但是,我们为什么要限制自己使用这两种语言?我们可以在这个领域中学习和应用整个编程语言。数据科学的魅力就在其中,它超越了编程语言。

我的目的是引入一个超越Python和R的世界,同时保留其核心思想。我们将介绍6种功能强大且有用的数据科学编程语言,我认为每位数据科学家都应该学习(或至少意识到)。所有这些语言都是开源的。

1.Scala
file

Scala是一种相当普通的编程语言。您可能已经在用它开展工作,或者在某个时候遇到了它(特别是如果您从事IT工作)。

Scala是Martin Odersky在2003年创建的一种开放源代码现代多范式编程语言。Scala作为“可扩展语言”它旨在以简短,优雅且类型安全的方式表示通用的编程标准。

让我们这样说吧–如果您了解Java的语法,那么您将很快就能掌握Scala。实际上,如果您知道C,C ++或Python之类的编程语言,学习Scala也将会非常顺利。我已经可以看到您的热情开始燃起!

那么,为什么要使用Scala?与纯Python相比,我们在Scala中编写代码的编译和执行速度要快得多。我喜欢Scala,因为它具有稳定性,灵活性,高速度和可伸缩性。您可以使用Scala开发适用于大数据的有用产品。

Scala相关资源:

Breeze:Breeze是一个用于数值处理的库,例如概率和统计函数,优化,线性代数等。

Github链接:https://github.com/scalanlp/breeze

Vegas:用于数据可视化的Scala库。

Github链接:https://github.com/vegas-viz/Vegas

Smile:Statistical Machine Intelligence and Learning Engine(Smile)是现代的机器学习库。

Github链接:https://github.com/haifengl/smile

DeepLearning.scala:这是一个简单的库,用于从面向对象和功能编程结构创建复杂的神经网络。

Github链接:https://github.com/ThoughtWorksInc/DeepLearning.scala

2.Julia
file

Julia在数据科学世界中正在迅速崛起。一些专家已经声称它会是Python的竞争对手!虽然我觉得这可能还为时过早,但是我们却是因该解了一下Julia的实用性。

Julia是由MIT的一组计算机科学家和数学家创建的一种令人耳目一新的现代、有意义且高性能的编程语言。它是开源的,通常用于科学计算和数据处理。如果您之前从事过R,Python或Matlab的开发,那么您会很快熟悉Julia。 Julia甚至存在一个scikit-learn库来帮助您进行过渡。

问题又来了–为什么Julia用于数据科学?原因有多种,但主要的原因是Julia的执行速度比Python和R的执行速度高10到30倍。

Julia相关资源

DataFrames.jl:用于在数据中查找数字模式的数据结构。

Github链接:https://github.com/JuliaData/DataFrames.jl

Plots.jl:用于绘制APIs和工具集。

Github链接:https://github.com/JuliaPlots/Plots.jl

ScikitLearn.jl:ScikitLearn.jl是流行的Scikit-learn库的Julia版本,这是用于构建ML。

Github链接:https://github.com/cstjean/ScikitLearn.jl

Mocha:Mocha是Julia的深度学习框架,灵感来自C ++的Caffe框架。

Github链接:https://github.com/pluskid/Mocha.jl

3.JavaScript
file

呼吁所有开发者!如果您想在不了解新语言的情况下寻求进入数据科学的途径– JavaScript真的是非常好的途径。JavaScript是一种功能强大,轻量级且易于实现的编程语言。它于1995年在Netscape 2.0中以LiveScript的名字首次启动。

如果您想使用JavaScript,最好具备一些HTML的基础知识,并且事先接触过面向对象的编程概念。这将为您提供创建在线应用程序的基本思路。当您在移动应用或浏览器中部署机器学习模型时,这特别方便。

除此之外,JavaScript还有一些出色的库,可用于数据可视化和创建仪表板。可以使用TensorFlow.js(用于数据科学的功能强大的JavaScript库)执行各种机器学习技术,例如手势识别,对象识别,音乐创作等。

JavaScript相关资源:

Math.js:Math.js是一个用于JavaScript的扩展数学库。

Github链接:https://github.com/josdejong/mathjs

D3.js:D3(或D3.js)是一个JavaScript库,用于使用Web标准可视化数据。

Github链接:https://github.com/d3/d3

Tensorflow.js:强大的机器学习库,用于训练和部署机器学习模型。

Github链接:https://github.com/tensorflow/tfjs

4.Swift
file

您是果粉吗?您喜欢使用他们的各种设备和紧密结合的iOS吗?那您一定会爱上Swift。

Swift是Apple为iOS和OS X应用程序开发的一种开源,简单而灵活的编程语言。 Swift建立在C和Objective-C的最佳基础上,没有C兼容性的限制。实际上,对于初学者来说,它是一种友好的编程语言,因为其简洁而富有表现力的语法和运行起来闪电般的速度。

Swift最近开始在数据科学界引起关注是它得到了杰里米·霍华德(fast.ai的联合创始人)的高度认可。有各种各样的库可以执行任务,例如数值计算,用于矩阵数学的高性能函数,数字信号处理,应用深度学习方法,构建机器学习模型等。

Swift相关资源:

Nifty(Demo):这是Swift编程语言的通用数值计算库。

Github链接:https://github.com/nifty-swift/Nifty-demo

Swiftplot:用于数据可视化的Swift库。

Github链接:https://github.com/KarthikRIyer/swiftplot

TensorFlow的Swift:是用于机器学习的下一代平台。

Github链接:https://github.com/tensorflow/swift

Swift AI:这是一个完全用Swift编写的高性能深度学习库。

Github链接:https://github.com/Swift-AI/Swift-AI

5.Golang
file

显而易见,Go是Google创造的一种编程语言。简单,可靠,高效的软件–简而言之。我喜欢Go的唯一原因是它的singular focus。通过一次只专注于一种方法(与使用多种方法来解决问题的其他语言相反),它避免了冲突。同时它有大量的开源工具,程序包和资源可用于使用Go执行数据科学任务。这包括数据收集,数据组织,数据解析,算术和统计计算,EDA和构建机器学习模型等。

Go相关资源:

Math:此软件包提供基本常数和数学函数。

Github链接:https://github.com/golang/go/tree/master/src/math

Dataviz:在Golang中构建和可视化数据结构。

Github链接:https://github.com/Arafatk/DataViz

GoLearn:用于Go的通用机器学习库。

Github链接:https://github.com/sjwhitworth/golearn

Gorgonia:它可以简化机器学习任务,并为深度学习和神经网络相关项目提供了平台。

Github链接:https://github.com/gorgonia/gorgonia

6.Spark
file

Spark不仅是语言,还是一种框架,但是您很快就会知道为什么它在我的清单上。它在数据工程师和数据科学家中非常受欢迎。Spark提供:Java,Scala,Python和R中的高级应用程序编程接口(API),以及一种优化的引擎,支持常规执行图。同时它也是一个开放源代码的快速集群计算框架,用于处理,查询和分析大数据。与其他大数据框架相比,Spark的优势在于它基于内存中的计算。这使计算运行速度提高了一百倍。Python的基本知识足以让您快速上手Spark。

Spark可以执行各种数据科学和数据工程任务,例如:

探索性数据分析

特征提取

监督学习

模型评估

构建和调试Spark应用程序等

Spark相关资源:

Spark SQL:这是Apache Spark的用于处理结构化数据的模块。

Github链接:https://github.com/apache/spark/tree/master/sql

GraphX:GraphX是Apache Spark的用于图形和图形并行计算的API。

Github链接:https://github.com/apache/spark/tree/master/graphx

MLib:MLlib是Apache Spark的可扩展机器学习库。

Github链接:https://github.com/apache/spark/tree/master/mllib

Spark NLP:John Snow Labs Spark NLP是基于Apache Spark ML构建的自然语言处理库。

Github链接:https://github.com/JohnSnowLabs/spark-nlp

结语

上文您是否觉得数据科学领域过于广阔?其实Python和R本身就很棒。但是这篇文章的目的是提出其他可用于执行数据科学任务的语言。

您也许现在已经知道其中一些语言(我相信所有开发人员都知道JavaScript!)–只是没有意识到可以将其用于构建出色的可视化和设计模型。为什么不试试呢!

原文链接:https://www.analyticsvidhya.com/blog/2019/06/6-useful-programming-languages-data-science-r-python/

欢迎关注【数据小盐罐儿】一个很“咸”的数据科学公众号,不定期分享有趣好玩的项目以及大量的学习资源

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 199,636评论 5 468
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 83,890评论 2 376
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 146,680评论 0 330
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 53,766评论 1 271
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 62,665评论 5 359
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,045评论 1 276
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,515评论 3 390
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,182评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,334评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,274评论 2 317
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,319评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,002评论 3 315
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,599评论 3 303
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,675评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,917评论 1 255
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,309评论 2 345
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 41,885评论 2 341

推荐阅读更多精彩内容