newaxis表示增加乙個新的座標軸,不好理解,看例子就明白了
import numpy as np
a = np.array([1,2,3])
print (a.shape,'\n',a)
結果為:
(3,)
[1 2 3]
看下面的:
a = np.array([1,2,3])[:,np.newaxis]
print (a.shape,'\n',a)
(3, 1)
[[1]
[2]
[3]]
你會發現,和第乙個程式相比,a的shape為(3,)現在為(3,1)變為二維陣列了,之前為[1,2,3],現在變為 [[1]
[2][3]]
a = np.array([1,2,3])[np.newaxis,:]
print (a.shape,'\n',a)
輸出結果為:
(1, 3)
[[1 2 3]]
這個和第二個相比,好像和他是反的,相當於轉置了,這是因為和[np.newaxis,:]這個地方np.newaxis放的位置有關,第二個程式放在[:,]的後面,相當於在原來的後面增加乙個維度,所以變為(3,1),而第三個則放在前面,則為(1,3),記得注意啊,放在前面是先逗號,在冒號,而放在後面是先冒號在逗號,不要弄錯了哦,同時記得是中括號擴起來,不是小括號哦
## 總結
np.newaxis的作用就是在原來的陣列上增加乙個維度。
Numpy中的函式
生成用函式 效果np.array x 將輸入資料轉化為乙個ndarray np.array x,dtype 將輸入資料轉化為乙個型別為type的ndarray np.asarray array 將輸入資料轉化為乙個新的 copy ndarray np.ones n 生成乙個n長度的一維全一ndarr...
Numpy中的transpose函式
transpose 的操作物件是矩陣。我們用乙個例子來說明這個函式 0 1 2 3 4 5 6 7 這是乙個shape為 2,2,2 的矩陣,現在對它進行transpose操作。首先我們對矩陣的維度進行編號,上述矩陣有三個維度,則編號分別為0,1,2,而transpose函式的引數輸入就是基於這個編...
numpy中的tile函式
在看機器學習實戰這本書時,遇到numpy.tile a,b 函式,愣是沒看懂怎麼回事,裝了numpy模組後,實驗了幾把,原來是這樣子 重複a,b次,這裡的b可以時int型別也可以是遠組型別。python view plain copy import numpy numpy.tile 0,0 5 在列...