Numpy是使用C语言实现的一个数据计算库,它用来处理相同类型,固定长度的元素。使用numpy操作数据时,系统运行的速度比使用python代码快很多。numpy中还提供了很多的数据处理函数,例如傅里叶变化,矩阵操作,数据拟合等操作。numpy的官方网站是www.numpy.org
安装
在jupyter中可以使用以下命令安装numpy库。
或者
在非jupyter环境中,去掉安装命令前的!进行安装。
导入模块
安装成功以后,使用import导入该模块进行使用,为了方便编写代码,在导入时同时给numpy一个别名。之后在使用该模块时,可以使用缩写的别名进行调用。
data=np.array([1,2,3,4,5,6,7])
data
定义一维数组
data=np.array([[1,2],[3,4],[5,6]])
data
输出结果:
array([[1, 2],
[3, 4],
[5, 6]])
数据类型
numpy支持的基本数据类型有,整型(int8,int16,int32,int64),无符号整数(uint8,uint16,uint32,uint64),布尔类型(bool),浮点型(float16,float32,float64,float128),complex(complex64,complex128,complex256)。数据类型有类型和长度两部分组成,例如int8,表示的数据类型是integer,每一个数字系统使用8个bit进行存储。
8个比特能够表示的数据范围是[0,2^8)==[0,256),同理,16个比特能够表示的数的范围是[0,2^16)。可以发现存储结构的长度越长,能够表示的数的范围就越大。
numpy的数据由基本类型组成,使用结构类ndarray表示。
输出结果:
- 定义一个自定类型的数据。在定义array时,使用参数dtype可以指定数据的类型。
指定数据类型
转换数据类型
不同的数据类型之间可以转换。观察下面的代码,代码16定义了一个整型的数据,在输出时也可以发发现数组中的数据都是整数。代码17使用astype把int类型的数据转换成float,数据的结果也发生了变化,数组中的元素都包含了一个小数点。以前是1,转换后输出的结果是1.0。
转换数据类型
创建数组的内置函数
创建一个元素值都为0的数组,
np.zeros((2,3)) #创建一个2行,3列的零矩阵
np.zeros(4) #创建一个长度为4的一维零矩阵
创建zeros矩阵
np.ones((2,3))
np.ones(4)
- diag
- 创建一个对角矩阵,矩阵中的元素由参数指定。例如下面的代码创建一个对角线元素是1,2,3,3的对角矩阵。