第十六篇:關於python/numpy向量說明

1、創建一個數組時,不要使用命令 a= np.random.randn(5), 這種命令生成的數據結構爲(5,),秩爲1,既不是行向量也不是列向量,被稱作a的一維數組,這導致它有一些不是很直觀的效果;舉個例子,如果我輸出一個轉置陣,最終結果它會和a看起來一樣,所以a和a的轉置陣最終結果看起來一樣。而如果我輸出a和a的轉置陣的內積,你可能會想:a乘以a的轉置返回給你的可能會是一個矩陣。但是如果我這樣做,你只會得到一個數。

 

 

2、創建一個數組,我們應該都得讓它成爲一個列向量或者讓它成爲一個行向量,那麼你的向量行爲更容易被理解,不會出現一個一維數組。

                                     a = np.random.randn(5,1)    ----->a.shape = (5,1)  //Column vector

                                     a = np.random.randn(1,5)    ----->a.shape = (1,5)  //Row vector

 

3、 當不完全確定一個向量的維度,通常可以扔進一個斷言語句,像這樣,去確保在這種情況下是一個(5,1)向量,或者說是一個列向量。

 

 

4、當一不小心以一維數組來執行,你也能夠重新改變數組維數 a=reshape, 表明一個數組或者一個數組(1,5)數組,以致於它表現更像列向量或行向量。

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章