Python数据处理与计算——概述

Posted 小杜同学的嘚啵嘚

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python数据处理与计算——概述相关的知识,希望对你有一定的参考价值。

Python是一种面向对象的,动态的程序设计语言,具有非常简洁而清晰的语法,适合于完成各种高层任务。它既可以用来快速开发程序脚本,也可以用来开发大规模的软件。

随着NumPy、SciPy、Matplotlib、Enthoughtlibrarys等众多程序库的开发,Python越来越适合于做科学计算、绘制高质量的2D和3D图像。与科学计算领域最流行的商业软件MATLAB相比,Python是一门通用的程序设计语言,比MATLAB所采用的脚本语言的应用范围更广泛,有更多的程序库的支持。虽然MATLAB中的许多高级功能和toolbox目前还是无法替代的,不过在日常的科研开发之中仍然很多的工作是可以用Python代劳的。

常用的模块概览与导入


 

1.数值计算库

NumPy为Python提供了快速的多维数据处理的能力,而SciPy则在NumPy基础上添加了众多的科学计算所需的各种工具包,有利这两个库,Python就具有几乎与MATLAB一样的处理数据和计算的能力了。

NumPy和SciPy官方网址分别为http://www.numpy.org/https://www.scipy.org/

NumPy为Python带来了真正的多维数据处理功能,并且提供了丰富的函数库处理这些数组。它将常用的数学函数进行数组化,使得这些数学函数能够直接对数组进行操作,将本来需要在Python级别进行的循环,放到C语言的运算中,明显地提高了程序的运算速度。

SciPy的核心计算部分都是一些久经考验的Fortran数值计算库,例如:

  • 线性代数使用lapack库;
  • 快速傅里叶变换使用fftpack库;
  • 常微分方程求解使用odepack库;
  • 非线性方程组求解及最小值求解等使用minpack库

 

2.符号计算库

SymPy是一套进行符号数学运算的Python函数库,它足够好用,可以帮助我们进行公式推导,进行符号求解。

SymPy官方网址:http://www.sympy.org/en/index.html

 

3.界面设计

制作界面一直都是一件十分复杂的工作,使用Traits库,将使得我们不必再界面设计上耗费大量精力,从而能把注意力集中到如何处理数据上去。

Traits官方网站:http://code.enthought.com/pages/traits.html

Traits库分为Traits和TraitsUI两大部分,Traits为Python添加了类型定义的功能,使用它定义的Traits属性具有初始化、校验、代理、事件等诸多功能。

TraitsUI库基于Traits库,使用MVC结构快速地定义用户界面,在最简单的情况下,编码者都不需要写一句关于界面的代码,就可以通过Traits属性定义获得一个可以工作的用户界面。使用TraitsUI库编写的程序自动支持wxPython和pyQt两个经典的界面库。

 

4.绘图与可视化

Chaco和Matplotlib是很优秀的2D绘图库,Chaco库和Traits库紧密相连,方便制作动态交互式的图表功能。而Matplotlib库则能够快速地绘制精美的图表,以各种格式输出,并且带有简单的3D绘图的功能。

Chaco官方网站:http://code.enthought.com/projects/chaco/

Matplotlib官方网站:https://matplotlib.org/

TVTK库在标准的VTK库之上用Traits库进行封装,如果要在Python下使用VTK,用TVTK是再好不过的选择。Mayavi2则在TVTK的基础上再添加了一套面向应用的方便工具,它既可以单独作为3D可视化程序使用,也可以快速地嵌入到用户的程序中去。

Mayavi官方网址:http://code.enthought.com/pages/mayavi-project.html

视觉化工具函式库(Visualization Toolkit,VTK)是一个开放源码,跨平台、支援平行处理(VTK曾用与处理大小近乎1个Petabyte的资料,其平台为美国Los Alamos国家实验室所有的具有1024个处理器之大型系统)的图形应用函式库。2005年曾被美国陆军研究实验室用于即时模拟俄罗斯制反导弹战车ZSU23-4受到平面波攻击的情形,其计算节点高达2.5兆之多。

此外,使用Visual库能够快速、方便地制作3D动画演示,使数据结果更有说服力。

Visual官方网站:http://vpython.org/

 

5.图像处理和计算机视觉

openCV由英特尔公司发起并参与开发,以BSD许可证授权发行,可以在商业和研究领域中免费使用。OpenCV可用于开发实时的图像处理、计算机视觉及模式识别程序。OpenCV提供的Python API方便我们快速实现算法,查看结果并且和其他的库进行数据交换。

 

摘自《数据馆员的Python简明手册》

以上是关于Python数据处理与计算——概述的主要内容,如果未能解决你的问题,请参考以下文章

Python概述

数据结构(python版)—— 1前期知识和综述

云计算与大数据概述

云计算与大数据概述

老吴Python宝典之——Python的概述与安装(第一章)

Linux系统概述与安装