资源描述:
《Python中的Numpy入门教程.pdf》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、Python中的Numpy入门教程这篇文章主要介绍了Python中的Numpy入门教程,着重讲解了矩阵中的数组操作,需要的朋友可以参考下1、Numpy是什么很简单,Numpy是Python的一个科学计算的库,提供了矩阵运算的功能,其一般与Scipy、matplotlib一起使用。其实,list已经提供了类似于矩阵的表示形式,不过numpy为我们提供了更多的函数。如果接触过matlab、scilab,那么numpy很好入手。在以下的代码示例中,总是先导入了numpy:复制代码代码如下:>>>importnum
2、pyasnp>>>printnp.version.version1.6.22、多维数组多维数组的类型是:numpy.ndarray。使用numpy.array方法以list或tuple变量为参数产生一维数组:复制代码代码如下:>>>printnp.array([1,2,3,4])[1234]>>>printnp.array((1.2,2,3,4))[1.22.3.4.]>>>printtype(np.array((1.2,2,3,4)))以list或tuple变量为
3、元素产生二维数组:复制代码代码如下:>>>printnp.array([[1,2],[3,4]])[[12][34]]生成数组的时候,可以指定数据类型,例如numpy.int32,numpy.int16,andnumpy.float64等:复制代码代码如下:>>>printnp.array((1.2,2,3,4),dtype=np.int32)[1234]使用numpy.arange方法复制代码代码如下:>>>printnp.arange(15)[01234567891011121314]>>>printt
4、ype(np.arange(15))>>>printnp.arange(15).reshape(3,5)[[01234][56789][1011121314]]>>>printtype(np.arange(15).reshape(3,5))使用numpy.linspace方法例如,在从1到3中产生9个数:复制代码代码如下:>>>printnp.linspace(1,3,9)[1.1.251.51.752.2.252.52.7
5、53.]使用numpy.zeros,numpy.ones,numpy.eye等方法可以构造特定的矩阵例如:复制代码代码如下:>>>printnp.zeros((3,4))[[0.0.0.0.][0.0.0.0.][0.0.0.0.]]>>>printnp.ones((3,4))[[1.1.1.1.][1.1.1.1.][1.1.1.1.]]>>>printnp.eye(3)[[1.0.0.][0.1.0.][0.0.1.]]创建一个三维数组:复制代码代码如下:>>>printnp.zeros((2,2,2)
6、)[[[0.0.][0.0.]][[0.0.][0.0.]]]获取数组的属性:复制代码代码如下:>>>a=np.zeros((2,2,2))>>>printa.ndim#数组的维数3>>>printa.shape#数组每一维的大小(2,2,2)>>>printa.size#数组的元素数8>>>printa.dtype#元素类型float64>>>printa.itemsize#每个元素所占的字节数8数组索引,切片,赋值示例:复制代码代码如下:>>>a=np.array([[2,3,4],[5,6,7]])>
7、>>printa[[234][567]]>>>printa[1,2]7>>>printa[1,:][567]>>>printa[1,1:2][6]>>>a[1,:]=[8,9,10]>>>printa[[234][8910]]使用for操作元素复制代码代码如下:>>>forxinnp.linspace(1,3,3):...printx...1.02.03.0基本的数组运算先构造数组a、b:复制代码代码如下:>>>a=np.ones((2,2))>>>b=np.eye(2)>>>printa[[1.1.][1
8、.1.]]>>>printb[[1.0.][0.1.]]数组的加减乘除:复制代码代码如下:>>>printa>2[[FalseFalse][FalseFalse]]>>>printa+b[[2.1.][1.2.]]>>>printa-b[[0.1.][1.0.]]>>>printb*2[[2.0.][0.2.]]>>>print(a*2)*(b*2)[[4.0.][0.4.]]>>>printb/(a*2)[[0