1 Numpy 优势
-
numpy介绍
-
一个开源的Python科学计算库
-
计算起来要比python简洁高效
-
Numpy使用ndarray对象来处理多维数组
-
NumPy提供了一个N维数组类型ndarray,它描述了相同类型的“items”的集合。
-
生成numpy对象:np.array()
-
-
-
ndarray的优势
-
内存块风格
-
list -- 分离式存储,存储内容多样化
-
ndarray -- 一体式存储,存储类型必须一样
-
-
ndarray支持并行化运算(向量化运算)
-
ndarray底层是用C语言写的,效率更高,释放了GIL
-
2 N维数组
属性名字 | 属性解释 |
---|---|
ndarray.shape | 数组维度的元组 |
ndarray.ndim | 数组维数 |
ndarray.size | 数组中的元素数量 |
ndarray.itemsize | 一个数组元素的长度(字节) |
ndarray.dtype | 数组元素的类型 |
2.1 ndarray的类型
名称 | 描述 | 简写 |
---|---|---|
np.bool | 用一个字节存储的布尔类型(True或False) | 'b' |
np.int8 | tinyint一个字节大小,-128 至 127 | 'i' |
np.int16 | smallint整数,-32768 至 32767 | 'i2' |
np.int32 | int整数,-2^31 至 2^32 -1 | 'i4' |
np.int64 | bigint整数,-2^63 至 2^63 - 1 | 'i8' |
np.uint8 | tinyint unsigned无符号整数,0 至 255 | 'u' |
np.uint16 | smallint unsigned无符号整数,0 至 65535 | 'u2' |
np.uint32 | 无符号整数,0 至 2^32 - 1 | 'u4' |
np.uint64 | 无符号整数,0 至 2^64 - 1 | 'u8' |
np.float16 | 半精度浮点数:16位,正负号1位,指数5位,精度10位 | 'f2' |
np.float32 | float单精度浮点数:32位,正负号1位,指数8位,精度23位 | 'f4' |
np.float64 | double双精度浮点数:64位,正负号1位,指数11位,精度52位 | 'f8' |
np.complex64 | 复数,分别用两个32位浮点数表示实部和虚部 | 'c8' |
np.complex128 | 复数,分别用两个64位浮点数表示实部和虚部 | 'c16' |
np.object_ | python对象 | 'O' |
np.string_ | 字符串 | 'S' |
np.unicode_ | unicode类型(字符串) | 'U' |
3 Numpy基本操作
3.1 生成数组的方法
3.2 数据在索引、切片
3.3 形状修改
3.4 类型修改
4 运算
4.1 逻辑运算&通用判断函数
4.2 np.where 三元运算符
类似if...else...