龙空技术网

Python数据处理基础模块之“NumPy”简介

闲人自学笔记 103

前言:

此时兄弟们对“isalnumpython”大约比较注意,姐妹们都需要了解一些“isalnumpython”的相关知识。那么小编也在网摘上网罗了一些对于“isalnumpython””的相关知识,希望你们能喜欢,看官们快快来了解一下吧!

NumPy 是一个开源的Python库,它是由 Numarray 和 Numeric 整合而来,在科学和工程领域有着广泛的应用,主要用于数据处理,其与 Pandas、SciPy、Matplotlib、scikit-learn、scikit-image 等模块结合使用,可以进行大数据处理、数据可视化、人工智能等。

NumPy 主要是提供了数组和矩阵的数据结构及相应的处理方法,并且对数据及矩阵可以进行高效的数学运算,具有线性代数、随机数生成等大量的高级数学函数库。

一、创建数组

NumPy 提供了 array() 函数用于创建数组,其语法结构如下:

numpy.array(obj, dtype=None, copy=True, order=None, ndmin=0)

参数说明:

boj:表示一个数组序列,如列表、元组、arange等

dtype:表示数组的数据类型,通过改变其值可改变数据的数据类型,默认为None

copy:表示数组能否被复制,默认为True

order:表示数组的内存布局,有3个值:C(行序列)、F(列序列)、A(默认)

ndmin:表示数组的维度

import numpy as np  # 导入模块arr = np.array([1,2,3,4])  # 创建数组print(arr)print(type(arr))

执行结果:

说明:数组可以是一维,二维,三维,如:

二、常用占位数组函数

numpy除了使用array()函数创建数组外,还提供了一些特殊的创建数组函数,如:zero()函数用于创建一个全0的数组,ones()函数用于创建一个全1的数组,empty()用于创建一个随机数组(注意不是空数组哦),eye()函数用于创建一个对角线为1的数组等,以上默认数据类型为float64,如:

另外,还有zeros_like(),ones_like(),empty_like()等函数,从字面理解就是创建一个与现有数组相同形状的全0,全1,和随机元素的数组,如:

zero_like():

ones_like():

empty_like():

三、numpy数组属性

numpy数组具有以下属性值:

1、ndarray.ndim:数组的维度数量,返回一个整数,表示数组是一维、二维或三维

2、ndarray.shape:数组的维度,返回一个元组,表示数组是什么形状,如(n,m)表示n行m列

3、ndarray.size:数组元素的数量,返回一个整数,表示数组有多少个元素,等于shape返回元组的元素乘积。

4、ndarray.dtype:数组元素的类型,如int32、int16、float64等。

5、ndarray.itemsize:数组每个元素的字节大小,等于其类型/8,比如一个元素的类型为int32,则其itemsize为4(32/8)。

6、ndarray.data:包含每个数组元素的缓冲器,一般用不到。

四、numpy数组元素的获取

数组元素的获取和列表、元组类似,其中一位数组就跟列表、元组一样,都是通过索引获取,二维、三维数组就是在一维的基础上增加第二个维度的索引下标即可,如:

另外,数组也可以跟列表一样,可以使用切片索引,如:

也可以使用布尔索引进行获取,如:

五、数组运算

数组也可以像列表,元组一样进行运算,如:

另外,我们还可以使用nump内置的通用函数进行运算,如我们熟悉的数学函数sin()、cos()/exp(),sum()等,如:

说明:以上都是把数组当做一个数字列表来进行运算的,无论它的维度是多少。

另外,还有其他的函数,如常用的 max(数组元素中的最大值),min(数组元素中的最小值),mean(求平均值)等,如:

还有很多函数,在此就不再一一介绍了,感兴趣的可以去找numpy文档自行研究。

六、数组的合并、拆分、复制、改变形状

6.1、数组的合并

数组之间可以沿不同的轴进行合并,如:

说明:数组在哪个方向上的合并,其轴的元素个数需要一致,如横向合并数组,则两个数组在横向上必须相同,即(n,x)和(n,y),垂直方向的合并也一样,即(x,n)和(y,n)。

6.2、数组的拆分

有合并就邮件拆分,数组也可拆分为指定的数组情况,如:

6.3、数组的复制

可以使用 = 、view()函数、copy()函数对数组进行复制,如:

6.4、改变数组形状

可以使用shape来改变数组的形状,如:

以上为numpy的一些简单介绍,当然numpy的功能不止这些,其强大的功能不是一两句话就能说完的,还得慢慢摸索研究。

标签: #isalnumpython