数学之路-python计算实战(5)-初识numpy以及pypy下运行numpy
N
NumPy系统是Python的一种开源的数字扩展。这种工具可用来存储和处理大型矩阵,比Python自身的嵌套列表(nested list structure)结构要高效的多(该结构也可以用来表示矩阵(matrix))。据说NumPy将Python相当于变成一种免费的更强大的MatLab系统。
一个用python实现的科学计算包。包括:1、一个强大的N维数组对象Array;2、比较成熟的(广播)函数库;3、用于整合C/C++和Fortran代码的工具包;4、实用的线性代数、傅里叶变换和随机数生成函数。numpy和稀疏矩阵运算包scipy配合使用更加方便。
NumPy(Numeric Python)提供了许多高级的数值编程工具,如:矩阵数据类型、矢量处理,以及精密的运算库。专为进行严格的数字处理而产生。多为很多大型金融公司使用,以及核心的科学计算组织如:LawrenceLivermore,NASA用其处理一些本来使用C++,Fortran或Matlab等所做的任务。
git clonehttps://bitbucket.org/pypy/numpy.git
cd numpy
pypy setup.pyinstall
deep@myddb:~$pypy
Python 2.7.6 (32f35069a16d819b58c1b6efb17c44e3e53397b2, Jun 26 2014, 21:49:19)
[PyPy 2.3.1 with GCC 4.6.3] on linux2
Type "help", "copyright", "credits" or"license" for more information.
>>>> import numpy
>>>>
本博客所有内容是原创,如果转载请注明来源
http://blog.csdn.net/myhaspl/
比python标准库更方便的是,numpy提供了一个N维数组类型ndarray,这是一个容器类型,存储了相同类型与大小的数据项,ndarray可以被切片,拥有整数索引,每个数据项占有一样的内存空间,数组对象的维度数目由shape属性定义,这是一个元组,数据项的类型由dtype定义。
注意的是ndarrays可以共享相同的数据,也就是在一个ndarray对象对共同数据的修改,在另一个ndarray对象可立即查看。从下面程序中可以看出
>>>>import numpy as np
>>>>myx=np.array([[11,22,33],[44,55,66]])
>>>>myx
array([[11, 22,33],
[44, 55, 66]])
>>>>myy=(myx,[22,33,44])
>>>>myy
(array([[11, 22,33],
[44, 55, 66]]), [22, 33, 44])
>>>>myx[0]=[111,222,333]
>>>>myy
(array([[111,222, 333],
[ 44, 55, 66]]), [22, 33, 44])
>>>>
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。