Python network,Python networks

  Python network,Python networks

  以及python和networkx的三个基友:numpy、scipy和matplotlib。

  Numpy擅长数组处理,多维数组的生成和访问,庞大的函数库,包括求和、均值、方差、最大值、排序、矩阵、矩阵类、线性代数模块。第一篇文章中提到了它的安装。

  Matplotlib擅长绘图、点和线的多形式显示、坐标轴变换等。第一篇文章描述了它的安装。

  Scipy非常强大,比如常微分方程求解,信号处理,图像处理等。安装python编译器后,从scipy官网下载相应的软件包(http://sourceforge.net/projects/scipy/files/)。正如我安装python-2.6一样,下载相应的版本,然后点击exe安装即可。安装后在IDEL中输入import scipy进行测试(ps:网上说用easy_install安装,结果不成功。Linux下应该可以,windows下不行)

  三者的基本顺序是数据存储在numpy中,低层处理用numpy,高层处理用scipy,数据显示用matplotlib。

  2.数组

  Numpy提供了两个基本对象:narray和ufunc。

  Narray:存储单一数据类型的多维数组

  Ufunc:可以处理数组的函数。

  2.1 narray对象

  将这个多维数组存储在narray对象中,有数组的地方就有类型。的基本数据类型有:

  numpy中的基本数据类型类型描述integer(一般为int32或int 64)int 8 byte type(-128-127)int 1616 bit integer(-32768-32767)int 3232 bit integer int 64 Unit 8 unsigned integer(0-255)Unit 16 unsigned integer(0-6535)Unit 32 Unit 64 Float 64 standard Float Float 16半精度浮点:1个标志位,5个指数位,10个小数位数Float当然,除了基本的数据类型,numpy还支持数据结构类型的数组。

  (1)1)narray对象的创建:

  导入numpy为np a=np.array([1,2,3,4]) b=np.array((6,7,8,9)) a.shape(4,)a.shape=2,2 aarray([[1,2],[3,4]]) a.shape=1,-1 aarray([[1,2,3,4]]) a=np.arange(0,1,0.1)#生成一个(0,1)的数组,数组的每个元素的直接差Endpoint=true False),true时生成[0,1]的等差数列,False时为[0,1] aarray ([0。 0.1111111, 0.2222222, 0.3333333, 0.444444, 0.5555556).0.77777778, 0.88888889, 1.]) a=np.logspace(0,1,12,base=2,endpoint=false)Traceback(最近一次调用last): File pyshell#14 ,第1行,Imodule a=np.logspace (0,1,12,base=2,endpoint=false)name error:name false 未定义# logs pace生成几何级数,logspace (a,b,C,base=10 2,endpoint=true false),base指定a和b的索引,C指定元素的个数,1.05946309,1.12246205,1.1892712,1.2592105,1.348885) 1.49830708,1.58740105,1.68179283,1.78179744,1.88774863]) a=NP。零(10)数组([0。 0. 0. 0. 0. 0 .

  数组访问的下标从0开始。

  特定元素的索引访问。可以通过索引访问,例如,对于数组A,可以有:a[5]

  索引访问。A[2:5],下标从2到5(左闭右开区间)

  A[1:-1:2],下表从1到最后,2表示每隔一个元素得到一个元素。

  A[5:1:-2],第三个参数,即步长为负,这里为-2,即每隔一个元素逆序获取。

  数据数组的建立和访问:(可以看到,数组内部就像一个字典,它的访问是基于索引的)

  persontype=np.dtype({names:[姓名,年龄,体重],格式:[S32 , I , f]},align=True) a=np.array([(张,32,75.5),(王,24,65.3)],dtype=persontype) aarray([(张,32,75.5),(王,24,65.30003051757812)],dtypenameTraceback(最后一次调用):模块a[0]中文件" pyshell#33 "的第一行nameAttributeError:“numpy。无效"对象没有属性【姓名】一[1][“姓名]]“王”

  2.2 ufunc运算

  x=np.linspace(0,2*np.pi,10) xarray([ 0 .0.6981317,1.3962634,2.0943951,2.7925268,3.4906585,4.1887902,4.88692191,5.58505361,6.28318531])y=NP。sin(x)yarray([0.0000000000 e,6.42771在计算时,指定了输出在外为x,所以x中的元素也改变了数组([0.000000000 e 00,6.42787610e-01,9.84807753e-01,8.66025404e-01,3.42020143e-01,-3.42020143e-01,-8.66025404e-01,-9.8480753 e-01,-6.42787610e-01即可以指定将结果存入z中,如果没有z,则默认存入y中#出了增加之外,数值运算还有数组减法减去(x,y[,z]),乘法乘(x,y[,z]),元素取负负数(x[,y]),x**y次方(x,y[,z]),x%y余数(x,y[,z])#还有布尔运算,等于(x,y[,z]),不等not_equal(x,y[,z]),小于等于less_equal(x,y[,z]),大于更大,大于等于greater _ equal数组([0.00000000000 e 00,1.28557522e 00,1.96961551e 00,1.73205081e 00,6.84040287e-01,-6.84040287e-01,-1.73205081e 00,-1.96961551e 00,-1.28557522e 00。

  此外,还有求和总和,最小最小,最大最大值,乘积点

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: