NumPy(Numerical Python) 是 Python 语言的一个扩展程序库,支持大量的维度数组与矩阵运算,NumPy 通常与 SciPy(Scientific Python)和 Matplotlib(绘图库)一起使用。
NumPy 最重要的一个特点是其 N 维数组对象 ndarray,它是一系列同类型数据的集合,以 0 下标为开始进行集合中元素的索引。
ndarray 对象是用于存放同类型元素的多维数组。
ndarray 中的每个元素在内存中都有相同存储大小的区域。
ndarray 内部由以下内容组成:
一个指向数据(内存或内存映射文件中的一块数据)的指针。
数据类型或 dtype,描述在数组中的固定大小值的格子。
一个表示数组形状(shape)的元组,表示各维度大小的元组。
一个跨度元组(stride),其中的整数指的是为了前进到当前维度下一个元素需要"跨过"的字节数。
语法集合:
1. 创建一个3*2数组:
import numpy as np
a = np.array ( [[1,2],[3,4],[9,8]] )
print (a)
注意:这里是有两个[ ] 符号,中间有一个逗号。
输出:
2. 提取这个matrix里面的数字
如果要提取第二行的第一个数:
print( a [1,0] )
因为这里还是按照编程的顺序,从0开始数
Rows first and than column,所以1是第二行,0是第一列。
输出:3
3. 查看这个matrix的shape
print( a.shape )
输出:(3, 2)
4. 生成不同形式的matrix
包括:
.zeros
.ones
.full
.random.random
输出:
5. 切片
跟我们之前说过的很像(包头不包尾)~但记得是先切横的,再切竖的
输出:
如果更改切片器里面的内容,原来的也会被更改噢!
栗子:这里把 i 切片的[0,0]修改成1738,原来的h里面也随之被改成了1738
6. 设定datatype
datatype可以在定义里被改变:
记得dtype = 后面要加多一个np. 要不然就error啦
输出:int64
6.Array的加减法
这部分比较简单,除了直接通过+-*/ 加减乘除符号之外,也可以使用np.add(), np.subtract(), np.multiply(), np.divide(), 进行操作。如果要计算平方根,则使用np.sqrt()
np.sum () 和 np.mean ()
老生常谈:axis为0,代表列;为1则代表行