1,首先比較二者的參數部分:這就是處理0階張量和1階張量的區別
- np.max:(a, axis=None, out=None, keepdims=False)
- 求序列的最值
- 最少接收一個參數
- axis:默認為列向(也即 axis=0),axis = 1 時為行方向的最值;
- np.maximum:(X, Y, out=None)
- X 與 Y 逐位比較取其大者;
- 最少接收兩個參數
2、python標准庫中的math和numpy中的數學計算問題:
比如都有math.exp()和numpy.exp()函數等,但是做數據分析時一般都用numpy自帶的數學函數,更專業
3、張量元素的迭代器
it=np.nditer(a,flags=['multi_index'],op_flags=['readwrite']),這句話看起來不好理解,我們來仔細研究下。
flags=['multi_index']表示對a進行多重索引,具體解釋看下面的代碼。
op_flags=['readwrite']表示不僅可以對a進行read(讀取),還可以write(寫入),即相當於在創建這個迭代器的時候,我們就規定好了有哪些權限。
4、張量的卷積運算
從二維張量(矩陣)的角度看,張量的卷積運算是對dot product和cross運算的一種推廣,對兩個矩陣的形狀沒有那么嚴格的要求,可以試想兩個平面運算,兩個方塊運算。
5.numpy.pad填充函數:
看這篇博客,寫的很詳細,有案例,
6.張量中的切片操作:
x1=np.random.rand(3,4,5)
x2 =x1[:,2,:]:確定了第二個軸的坐標,沒有用冒號代替,意思就是全選,則x2,shape=(3,5),就相當於在面包上切片。
7,ndarray的方法和屬性
Numpy中主要處理張量,當我們把處理好的數據集變成張量對象后,那它將擁有哪些方法和函數呢?比如最常見的shape和reshape(),transpose()。這些可以分為描述信息和統計信息兩大類吧,比如mean(),std()
