Python Numpy库常见用法入门教程

  

本文实例讲述了Python Numpy库常见用法。分享给大家供大家参考,具体如下:

  

1,简介

  

Numpy是一个常用的Python科学技术库,通过它可以快速对数组进行操作,包括形状操作,排的序,选择,输入输出,离散傅立叶变换,基本线性代数,基本统计运算和随机模拟等。许多Python库和科学计算的软件包都使用Numpy数组作为操作对象,或者将传入的Python数组转化为Numpy数组,因此在Python中操作数据离不开Numpy。

  

Numpy的核心是ndarray对象,由Python的n维数组封装而来,但通过C语言预编译相关的数组操作,因此比原生Python具有更高的执行效率,但仍然使用Python语言编码,这样就同时具有简洁的代码和高效的运行速度.ndarry与数组有些区别值得注意,Numpy数组中的元素都具有相同的类型,并且在创建时就确定了固定的大小,这与Python数组对象可以动态增长不同。

  

2,数组对象

  

2.1,属性

  

Numpy对象的形式是同构多维数组,数组的维度称为轴(轴),每个维度上元素的个数称为轴的长度,例如下面是一个2×3的二维数的arr组,第一轴长度为3,第二轴长度为2

        arr=[[1。,0。, 0),   [0。1。2。]]      

arr数组对象常用的属性如下:

        #数组轴的个数   arr.ndim   #数组维度及长度,例如2×3的数组其形状为(2、3)   arr.shape   #数组元素的总个数   arr.size   #数组中元素的数据类型   arr.dtype   #数组中元素所占字节数   arr.itemsize      

2.2,创建数组

  

可以通过数组()方法包裹普通python数组将其转化为numpy数组,通过dtype=规定元素的数据类型。数组可以是二维等高维数组,也可以是元组的形式。

  

如果需要填充已知大小的数组可以使用函数0(),将元素都填充为0,或者的()将元素填充为1,空()将元素填充为随机数

  

不等(a, b, c)函数用于从a到b每隔c长度生成一个数组元素.linspace (a, b, c)函数用于在a到b之间生成c个数组元素

        #普通数组转化为numpy数组   a1=np。阵列(2、3、4,dtype=浮动)   打印(a1)   #将元组数组转化为二维numpy数组   a2=np。数组([(1、2、3),(3、4、5)))   打印(a2)   #将3×3的数组用1填充   a3=np。((3))   打印(a3)   #从1到10,每隔2生成一个元素   a4=np。(1,2)不等   打印(a4)   在1到12号之间生成4个元素   a5=np。linspace (1、12、4、dtype=int)   打印(a5)      '''   普通数组转化为numpy对象:   (2。3.4。)   元组数组:   [(1 2 3)   [3 4 5]]   用1填充数组:   [[1。1. 1。)   (1。1. 1。)   (1。1. 1。]   从1到10每隔2生成一个元素:   (1 3 5 7 9)   在1到12之间生成4个元素:   [1 4 8 12]   " 之前      

2.3,数组操作

  

算术运算符可以直接运用在矩阵上,其结果是将运算应用到每个元素上,例如矩阵A * B就是每个元素对应相乘,矩阵的乘法运算使用的是@符号

        一个=np。数组([[1],   [0,1]])   B=np。数组([(2,0),   [3,4]])   打印(A * B)   打印(@ B)      '''   矩阵元素对应相乘:   [[2 0]   [0 4]]   矩阵的乘法:   [[4]5   [3 - 4]]   " 之前      

numpy中有些函数应用于整个数组,例如求和和,最大值最大,最小值最小。如果在这些参数中指定了某个轴,则应用于指定轴。

  

还有一些函数应用于数组中的具体元素,例如求罪,因为,经验,开方√6等,这些函数叫做通函数(ufunc)

        一个=np。阵列([[0,1,2,3]。   (4、5、6、7)   (8、9、10、11)])   print (a.max()) #求整体的最大值,结果为11   print (a.sum(轴=0))#求每一列的和,结果为:[12 15 18 21]   print (np.sqrt (a)) #数组每个元素求开方      

numpy中的数组同python中列表的一样可以进行索引,切片和迭代操作。数组一个[x]代表访问数组一个下标为x的元素,一维数组(x, y)一代表访问数组从x到y的元素,如果省略x代表从头开始,省略y代表直到结尾。[x, y:]代表从x到y每隔一个元素取一个值,如果一个为负数,代表逆序取值。

        一个=np。数组([0,1,2,3,4,5,6,7,8,9))   打印([1:3])#输出下标为1到3的元素:(1 2)   打印([::2])#逆序每隔两个元素选一个值:[9 7 5 3 1]

Python Numpy库常见用法入门教程