040、数组广播机制
数组广播机制 import numpy as np 正常的加法: a = np.array([[ 0, 0, 0], [10,10,10], [20,20,20], [30,30,30]]) b = np.array([[ 0, 1, 2], [ 0, 1, 2], [ 0, 1, 2], [ 0, 1, 2]]) a + b array([[ 0, 1, 2], [10, 11, 12], [2…
2024-3-07 20:45
|
|
12
497 字
|
9 分钟
039、choose 函数实现条件筛选
choose 函数实现条件筛选 对于数组,我们有时候需要进行类似 switch 和 case 进行条件选择,此时使用 choose 函数十分方便: import numpy as np control = np.array([[1,0,1], [2,1,0], [1,2,2]]) np.choose(control, [10, 11, 12]) array([[11, 10, 11], [12, …
2024-3-07 20:45
|
|
16
254 字
|
6 分钟
038、ufunc 对象
ufunc 对象 Numpy 有两种基本对象:ndarray (N-dimensional array object) 和 ufunc (universal function object)。ndarray 是存储单一数据类型的多维数组,而 ufunc 则是能够对数组进行处理的函数。 例如,我们之前所接触到的二元操作符对应的 Numpy 函数,如 add,就是一种 ufunc 对象,它可以作用于数…
2024-3-07 20:45
|
|
15
485 字
|
11 分钟
037、二元运算
二元运算 import numpy as np 四则运算 运算 函数 a + b add(a,b) a - b subtract(a,b) a * b multiply(a,b) a / b divide(a,b) a ** b power(a,b) a % b remainder(a,b) 以乘法为例,数组与标量相乘,相当于数组的每个元素乘以这个标量: a = np.array([1,2]) a…
2024-3-07 20:44
|
|
15
288 字
|
6 分钟
036、向量化函数
向量化函数 自定义的 sinc 函数: import numpy as np def sinc(x): if x == 0.0: return 1.0 else: w = np.pi * x return np.sin(w) / w 作用于单个数值: sinc(0.0) 1.0 sinc(3.0) 3.8981718325193755e-17 但这个函数不能作用于数组: x = np.array(…
2024-3-07 20:44
|
|
19
148 字
|
5 分钟
035、一般函数
一般函数 import numpy as np 三角函数 sin(x) cos(x) tan(x) sinh(x) conh(x) tanh(x) arccos(x) arctan(x) arcsin(x) arccosh(x) arctanh(x) arcsinh(x) arctan2(x,y) arctan2(x,y) 返回 arctan(x/y) 。 向量操作 dot(x,y) inner(…
2024-3-07 20:44
|
|
8
296 字
|
15 分钟
034、矩阵
矩阵 使用 mat 方法将 2 维数组转化为矩阵: import numpy as np a = np.array([[1,2,4], [2,5,3], [7,8,9]]) A = np.mat(a) A matrix([[1, 2, 4], [2, 5, 3], [7, 8, 9]]) 也可以使用 Matlab 的语法传入一个字符串来生成矩阵: A = np.mat('1,2,4;2,…
2024-3-07 20:43
|
|
7
124 字
|
5 分钟
033、生成数组的函数
生成数组的函数 arange arange 类似于Python中的 range 函数,只不过返回的不是列表,而是数组: arange(start, stop=None, step=1, dtype=None) 产生一个在区间 [start, stop) 之间,以 step 为间隔的数组,如果只输入一个参数,则默认从 0 开始,并以这个值为结束: import numpy as np np.aran…
2024-3-07 20:43
|
|
6
1010 字
|
21 分钟
032、对角线
对角线 这里,使用与之前不同的导入方法: import numpy as np 使用numpy中的函数前,需要加上 np.: a = np.array([11,21,31,12,22,32,13,23,33]) a.shape = 3,3 a array([[11, 21, 31], [12, 22, 32], [13, 23, 33]]) 查看它的对角线元素: a.diagonal() arra…
2024-3-07 20:43
|
|
9
141 字
|
4 分钟
031、数组形状
数组形状 %pylab Using matplotlib backend: Qt4Agg Populating the interactive namespace from numpy and matplotlib 修改数组的形状 a = arange(6) a array([0, 1, 2, 3, 4, 5]) 将形状修改为2乘3: a.shape = 2,3 a array([[0, 1, 2…
2024-3-07 20:42
|
|
6
937 字
|
22 分钟