
课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
数据处理是目前大多数软件开发程序员都需要重点关注的一个问题,而本文我们就简单来了解一下,编程开发语言如何处理数据。
面向数组的数据处理:MATLAB/Octave、Julia
面向数组的编程是为了支持数值编程模型:那些基于矩阵代数和相关数值方法的模型。
虽然Python的标准库不直接支持这一点,但Python在设计时考虑了面向数组的编程,并专门为三方NumPy库和类似的面向数组的工具添加了一系列语法和语义特性。
在许多方面,Python的科学技术栈被作为商业MATLAB的替代方案,后者被广泛用于科学和工程领域的建模、仿真和数据分析。GNUOctave是一个开源的方案,目标是兼容MATLAB代码的语法,允许人们对照这两种面向数组的编程方法。
Julia是另一种相对较新的语言,重点关注面向数组的编程和基于类型的函数重载。
学习这些语言,你可以了解Python的科学技术栈,以及有机会通过像OpenCL和Nvidia的CUDA这种技术来探索硬件层面的并行执行,并通过ApacheSpark和专用于Python的Blaze来了解分布式数据处理。
统计数据分析:R
随着对大型数据集的接触越来越多,对灵活处理这些数据集的分析工具的需求也越来越大。R编程语言就是这样的工具,它特别关注统计性的数据分析和可视化。
学习R能会让你深入了解Python在科学技术栈的统计分析能力,尤其是pandas数据处理库和seaborn统计可视化库。
计算管道建模:Haskell、Scala、Clojure、F#
面向对象的数据建模和面向数组的数据处理主要关注静态的数据,无论是以命名的属性形成集合的形式,还是以结构化数据形成数组的形式。
相比之下,函数式编程语言强调以计算流的形式对动态数据进行建模。即便只学习函数式编程的基本知识,也能极大地改进数据转换操作的结构,即使在其它过程式、面向对象或面向数组的程序中也是如此。
Haskell是一种函数式编程语言,对Python的设计产生了重大影响,显著的是在Python2.0中引入的列表推导式。
Scala是一种(存疑的)JVM函数式编程语言,加上Java、Python和R,它们是ApacheSpark数据分析平台的四种主要编程语言。尽管Scala的设计偏重于函数式编程,但它的语法、数据模型和执行模型的设计也大限度地降低Java程序员使用的门槛(因此所谓“存疑的”——其实是因为,Scala好被归类为一门具有强函数式编程支持的面向对象编程语言)。
Clojure是另一种基于JVM的函数式编程语言,是Lisp的一种方言。它之所以出现在这份清单里,因为它是Python的toolz函数式编程工具包的灵感来源。
F#不是我自己特别熟悉的语言,但它作为.netCLR(公共语言运行时)推荐的函数式编程语言,所以还是值得关注。
学习这些语言,你可以深入了解Python自己的计算管道建模工具,包括容器推导式、生成器、生成器表达式、functools和itertools标准库,以及三方的Python函数工具包,比如toolz。
【免责声明】:本内容转载于网络,转载目的在于传递信息。文章内容为作者个人意见,本平台对文中陈述、观点保持中立,不对所包含内容的准确性、可靠性与完整性提供形式地保证。请读者仅作参考。更多内容请加danei0707学习了解。欢迎关注“达内在线”参与分销,赚更多好礼。