numpy中的max和maximum


  numpy科學計算包中有兩個函數np.max()和np.maximum(),他們的功能截然不同。簡單而言即前者作用於ndarray對象,求的是它自身的最大。而后者是一個數學上的取$\max$的效果,它是一個運算。

  先說np.max()

>>>A = np.array([[1,8,3,6,5],[9,2,7,4,5]])
>>>np.max(A)
9
>>>np.max(A, axis=0)
array([9, 8, 7, 6, 5])
>>>np.max(A, axis=1)
array([8, 9])

  效果一目了然。不加axis參數的時候它會返回一個數組所有元素中的最大值。axis=0時它返回了列最大值,axis=1的時候它返回了行最大值。(這個時候它表現的像matlab里的max函數)

  你可能會問,axis=0不是行么?axis=1不是列么?怎么剛好反過來了。這個其實不是這樣看的,它的計算方式和numpy看待數組的方式有關。看了我的這篇文章你會豁然開朗https://www.cnblogs.com/chester-cs/p/12682612.html

  再說np.maximum()  

>>>np.maximum(A, 5)
array([[5, 8, 5, 6, 5],
       [9, 5, 7, 5, 5]])
>>>np.maximum(A,10)
array([[10, 10, 10, 10, 10],
       [10, 10, 10, 10, 10]])

  前面已經說了np.maximum()是一個運算,看了上面的例子是不是一下就懂了?


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM