广播
广播是指numpy在算数运算期间处理不同形状的数组的能力,对数组的算数运算通常在相应的元素上进行。如果两个阵列具有完全相同的形状,则这些操作被无缝执行;
迭代
Numpy包包含一个迭代器对象numpy.nditer,它是一个有效的多维迭代器对象,可以用于在数组上进行迭代。数组的每一个元素可使用Python的标准接口iterator访问;
import numpy as np
arr1 = np.arange(0,12).reshape((4,3))
for i in np.nditer(arr1):
print(i)
这里注意,是numpy包,而不是ndarray对象,基于ndarray对象的操作方法相对较少,后续讲解的,基本都是numpy的操作方法;
数组操作
reshape:不改变数据的条件下,改变数据的形状,与resize类似;
import numpy as np
arr1 = np.arange(0,12).reshape((4,3))
arr2 = arr1.reshape((3,4))
print(arr1)
print(arr2)
flat:数组上的一维迭代器#与nditer类似
import numpy as np
arr1 = np.arange(0,12).reshape((4,3))
for i in arr1.flat:
print(i,end=' ')
flatten:返回迭代为一维的数组副本
import numpy as np
arr1 = np.arange(0,12).reshape((4,3))
print('arr1',arr1)
arr2 = arr1.flatten()
print(arr2)
print(arr1)

ravel:返回连续的展开数组
import numpy as np
arr1 = np.arange(0,12).reshape((4,3))
print('arr1',arr1)
arr2 = arr1.ravel()
print(arr2)
print(arr1)
transpose:翻转数组的维度