import numpy as np
01 NumPy的ndarray:一种多维数组对象
- ndarray是一个通用的同构数据多维容器,也就是说,其中的所有元素必须是相同类型的。
- 每个数组都有一个
shape
(一个表示各维度大小的元组)和一个dtype
(一个用于说明数组数据类型的对象)。
本书中的“数组”、“NumPy数组”、“ndarray”时,基本上都指的是同一样东西,即ndarray对象。
⚠️认为np.empty会返回全0数组的想法是不安全的。很多情况下,它返回的都是一些未初始化的垃圾值。
1⃣️ ndarray的数据类型
- dtype(数据类型)是一个特殊的对象,它含有ndarray将一块内存解释为特定数据类型所需的信息。
- 数值型dtype的命名方式相同:一个类型名,后面跟一个用于表示各元素位长的数字。
注意:
- 调用astype无论如何都会创建出一个新的数组(原始数据的一份拷贝),即使新dtype跟dtype相同也是如此。
警告:
- 注意,浮点数只能表示近似的分数值。在复杂计算中,由于可能会积累一些浮点错误,因此比较操作只能在一定小数位以内有效。
2⃣️ 数组和标量之间的运算
- 不用编写循环即可对数据执行批量运算,这通常就叫做矢量化vectorization。
- 大小相等的数组之间的任何算术运算都会将运算应用到元素级。
- 数组与标量的算术运算也会将那个标量值传播到各个元素。
- 不同大小的数组之间的运算叫做广播broadcasting。
3⃣️ 基本的索引和切片
- 当你将一个标量值赋值给一个切片时,该值会自动传播到整个选区。
- 数组跟列表最重要的区别在于,数组切片是原始数组的视图。这意味着数据不会被复制,视图上的任何修改都会直接反映到源数组上。
如果你要想得到的是ndarray切片的一份副本而非视图,就需要显示地进行复制操作,例如
arr[5:8].copy()
- 对于高维度数组,可以传入一个以逗号隔开的索引列表来选取单个元素。
切片索引
4⃣️ 布尔型索引
5⃣️ 花式索引
- 花式索引跟切片不一样,它总是将数据复制到新数组中。
6⃣️ 数组转置和轴对换
- 转置transpose是重塑的一种特殊形式,它返回的是源数据的视图。
- 数组不仅有transpose方法,还有一个特殊的T属性。
- np.dot(,)计算矩阵内积。
- transpose()
- swapaxes()方法
02 通用函数:快速的元素级数组函数
03 利用数组进行数据处理
04 用于数组的文件输入输出
05 线性代数
06 随机数生成
07 范例:随机漫步
来源:CSDN
作者:大虎牙
链接:https://blog.csdn.net/qq_34170700/article/details/104614575