数据编程语言有哪些

数据编程语言有哪些,第1张

1、Python语言

      如果你的数据科学家不使用R,他们可能就会彻底了解Python。十多年来,Python在学术界当中一直很流行,尤其是在自然语言处理(NLP)等领域。因而,如果你有一个需要NLP处理的项目,就会面临数量多得让人眼花缭乱的选择,包括经典的NTLK、使用GenSim的主题建模,或者超快、准确的spaCy。同样,说到神经网络,Python同样游刃有余,有Theano和Tensorflow;随后还有面向机器学习的scikit-learn,以及面向数据分析的NumPy和Pandas。

还有Juypter/iPython――这种基于Web的笔记本服务器框架让你可以使用一种可共享的日志格式,将代码、图形以及几乎任何对象混合起来。这一直是Python的杀手级功能之一,不过这年头,这个概念证明大有用途,以至于出现在了奉行读取-读取-输出-循环(REPL)概念的几乎所有语言上,包括Scala和R。

Python往往在大数据处理框架中得到支持,但与此同时,它往往又不是“一等公民”。比如说,Spark中的新功能几乎总是出现在Scala/Java绑定的首位,可能需要用PySpark编写面向那些更新版的几个次要版本(对Spark Streaming/MLLib方面的开发工具而言尤为如此)。

与R相反,Python是一种传统的面向对象语言,所以大多数开发人员用起来会相当得心应手,而初次接触R或Scala会让人心生畏惧。一个小问题就是你的代码中需要留出正确的空白处。这将人员分成两大阵营,一派觉得“这非常有助于确保可读性”,另一派则认为,我们应该不需要就因为一行代码有个字符不在适当的位置,就要迫使解释器让程序运行起来。

2、R语言

    在过去的几年时间中,R语言已经成为了数据科学的宠儿——数据科学现在不仅仅在书呆子一样的统计学家中人尽皆知,而且也为华尔街交易员,生物学家,和硅谷开发者所家喻户晓。各种行业的公司,例如Google,Facebook,美国银行,以及纽约时报都使用R语言,R语言正在商业用途上持续蔓延和扩散。

R语言有着简单而明显的吸引力。使用R语言,只需要短短的几行代码,你就可以在复杂的数据集中筛选,通过先进的建模函数处理数据,以及创建平整的图形来代表数字。它被比喻为是Excel的一个极度活跃版本。

R语言最伟大的资本是已围绕它开发的充满活力的生态系统:R语言社区总是在不断地添加新的软件包和功能到它已经相当丰富的功能集中。据估计,超过200万的人使用R语言,并且最近的一次投票表明,R语言是迄今为止在科学数据中最流行的语言,被61%的受访者使用(其次是Python,39%)。

3、JAVA

    Java,以及基于Java的框架,被发现俨然成为了硅谷最大的那些高科技公司的骨骼支架。 “如果你去看Twitter,LinkedIn和Facebook,那么你会发现,Java是它们所有数据工程基础设施的基础语言,”Driscoll说。

Java不能提供R和Python同样质量的可视化,并且它并非统计建模的最佳选择。但是,如果你移动到过去的原型制作并需要建立大型系统,那么Java往往是你的最佳选择。

4、Hadoop和Hive

 一群基于Java的工具被开发出来以满足数据处理的巨大需求。Hadoop作为首选的基于Java的框架用于批处理数据已经点燃了大家的热情。Hadoop比其他一些处理工具慢,但它出奇的准确,因此被广泛用于后端分析。它和Hive——一个基于查询并且运行在顶部的框架可以很好地结对工作。

目前热门的语言有:C、C++、JAVA、VB、VC、FoxPro、Delphi、SQL、PHP、ASP、JSP等等。

专门有机构为编程语言进行排名,如下图:

先决条件: 这是一个单边匹配问题,只考虑基于乘客选择司机车型的角度派单进行匹配,而不考虑现实中存在的司机挑单问题、等待时间问题及所有其他影响因素(最理想化)。

基本概念及术语:

        1 Uber是基于地理位置的打车软件,派单机制。

        2 Uber车型分为人民优步(People’s Uber),优选轿车(UberX),高级轿车(BlackUber),高级商务车(UberXL),按顺序车型越来越高级

        3 二分图匹配可以理解为乘客为了打车去匹配车,乘客为左边集合中元素,车为右边集合中元素,匹配成功则用一条线连接乘客和车,最大匹配则是找尽量多的连线。

        4 帕累托最优指的是在乘客心里面对不同车型有一个优先级排序的情况下,若几个乘客同时打车,尽量让所有乘客达到最满意的效果,即搭乘自己心中优先级最高或者较高的车。

假设我们有四种乘客(各一人)存在晚高峰时段存在打车需求,即学生(没啥钱),程序员(挣得挺多),金融男(挣得更多),CEO(股票一大把,不太考虑钱的问题),同时四种乘客对于自己的乘车需求有不同的偏好。此时打车需求量极大,路上只有一辆人民优步,一辆优选轿车,一辆高级轿车在行驶。

因为高峰时段Uber溢价,学生对价格极为敏感(例如我),自动退出这一时段打车竞争,等待高峰时段过后继续叫车。此时剩下的三个人心中对于车型优先级排序如下(纯属虚构):

        程序员:优选轿车≻人民优步≻高级轿车

        金融男:优选轿车≻高级轿车≻人民优步

        CEO:高级轿车≻优选轿车≻人民优步

如图,程序员下班走到路边突然觉得想叫车,于是开始叫车,距离车最近。此时此刻,金融男在大楼门口准备叫车,距离车次之。CEO在大楼顶层的办公室里坐着开始叫车,距离车最远。所以三者叫车优先级排序为程序员第一,金融男第二,CEO第三。

程序员毫无悬念的在于金融男的竞争中获胜,叫到了优选轿车,而金融男因为叫车顺序第二位,所以只能叫到第二喜欢的车型高级轿车(就是多花了点钱呗),但是CEO比较倒霉,只能选择最后的人民优步了(有钱没地方花)。所以最终形成匹配M=(程序员-优选轿车,金融男-高级轿车,CEO-人民优步),同时因为Serial Dictatorship机制存在严格的先后顺序,所以每一级乘客都一定能叫到在剩下的车型里自己最喜欢的那个,不可能存在其他的匹配使得三个人更好,所以此时形成帕累托最优。

如图,三个人不存在选择的先后顺序,即同时同地叫车。

只存在一种匹配可以实现帕累托最优,即程序员选择人民优步,金融男选择优选轿车,CEO选择高级轿车。我们并不能找到其他匹配使得三人整体更高兴。

假设包括学生在内的四人在非高峰时段打车,此时打车需求量不大,路上只有两辆人民优步,一辆优选轿车,一辆高级轿车,一辆高级商务车在行驶。

此时的四个人心中对于车型优先级排序如下(还是虚构的):

        穷学生:{人民优步1,人民优步2}≻优选轿车≻高级轿车≻高级商务车

        程序员:优选轿车≻{人民优步1,人民优步2}≻高级轿车≻高级商务车

        金融男:优选轿车≻高级轿车≻高级商务车≻{人民优步1,人民优步2}

        CEO:高级商务车≻高级轿车≻优选轿车≻{人民优步1,人民优步2}

注:{人民优步1,人民优步2}代表weak preference关系,即二者优先级相同不作区分

如图,程序员、金融男、CEO位置同情景一,穷学生的位置则因为年轻跑的远所以离车最近。所以四者叫车优先级排序为穷学生第一,程序员第二,金融男第三,CEO第四。

学生因为离车最近所以选到了人民优步1(或人民优步2),程序员再次在与金融男的竞争中获胜选到了优选轿车,金融男只能去选第二喜欢的高级轿车,而CEO拿到了最爱的高级商务车。同理,因为存在Serial Dictatorship机制,所以此匹配为帕累托最优。

如图,四个人不存在选择的先后顺序,即同时同地叫车。

存在两种匹配可以实现帕累托最优:

匹配一 :学生叫到人民优步1,程序员叫到第二喜爱的人民优步2,金融男选择优选轿车,CEO选择高级商务车,而高级轿车则没有人选择。此种匹配保证除程序员外的其他人都得到了自己最喜欢的车型,而程序员也较为不错的得到了第二喜爱的车型。

匹配二 :学生叫到人民优步1,程序员叫到优选轿车,金融男叫到高级轿车,CEO得到高级商务车,而此时人民优步2没有人选择。此种匹配保证除金融男外的其他人都得到了自己最喜爱的车型,而金融男也得到了自己第二喜爱的车型。

我们并不能找到任何一种匹配比以上两种匹配更能让所有人更开心,而且以上两种匹配达到的效果相同,即三人拿到最喜欢的车型,一人拿到第二喜欢的车型。所以以上两种匹配均为帕累托最优。

以上就是关于数据编程语言有哪些全部的内容,包括:数据编程语言有哪些、编程都有哪些语言、用UBER叫车来解释帕累托最优等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zz/10098156.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-05
下一篇 2023-05-05

发表评论

登录后才能评论

评论列表(0条)

保存