Python: Numpy: 矩阵运算

求矩阵中最小元素和最大元素的索引:argmin()argmax()

>>> a.argmin()
0
>>> np.argmin(a)
0
计算平均值: np.mean(A)或者A.mean()或者numpy.average(A)

求解中位数:

A.median()

累加函数:在cumsum()函数中:生成的每一项矩阵元素均是从原矩阵首项累加到对应项的元素之和。

累差运算函数:每一行中后一项与前一项之差。

nonzero()函数:这个函数将所有非零元素的行与列坐标分割开,重构成两个分别关于行和列的矩阵

>>> x[np.nonzero(x)]
array([1, 2, 1, 1])
>>> np.transpose(np.nonzero(x))
array([[0, 0],
       [1, 1],
       [2, 0],
       [2, 1])
>>> a = np.array([[1,2,3],[4,5,6],[7,8,9]])
>>> a > 3
array([[False, False, False],
       [ True,  True,  True],
       [ True,  True,  True]])
>>> np.nonzero(a > 3)
(array([1, 1, 1, 2, 2, 2]), array([0, 1, 2, 0, 1, 2]))

其中transpose()函数是转置函数,也可以使用A.T来表示转置。

sort()函数:排序。numpy.sort(a, axis=-1, kind='quicksort', order=None)

详见:https://docs.scipy.org/doc/numpy/reference/generated/numpy.sort.html#numpy.sort

clip()函数:格式是clip(Array,Array_min,Array_max)

Array指的是将要被执行用的矩阵,而后面的最小值最大值则用于让函数判断矩阵中元素是否有比最小值小的或者比最大值大的元素,并将这些指定的元素转换为最小值或者最大值。

A = np.arange(3,15).reshape((3,4))
         
print(A.flatten())   
# array([3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14])

for item in A.flat:
    print(item)

flatten是一个展开性质的函数,将多维的矩阵进行展开成1行的数列。而flat是一个迭代器,本身是一个object属性 

猜你喜欢

转载自blog.csdn.net/lcqin111/article/details/82533180