您好,登錄后才能下訂單哦!
本篇內容介紹了“numpy中軸處理如何實現”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
指定的軸是被壓縮的軸
沿軸的時候可以指定兩個軸,即面被壓縮,以面作為輸入
np.newaxis 在使用和功能上等價于 None,其實就是 None 的一個別名
import numpy as np a=np.array([1,2,3]) b=a[np.newaxis,:] c=a[:,np.newaxis]
numpy.expand_dims(a,axis)
擴展一個維就是把一個維往后挪,或者增加
numpy.broadcast_to函數將數組廣播到新形狀。它在原始數組上返回只 讀視圖。它通常不連續。如果新形狀不符合 NumPy 的廣播規則,該函數可能會拋出ValueError。
numpy.broadcast_to(array,shape, subok)
import numpy as np a = np.arange(4).reshape(1, 4) print(">>>") print(a.shape) print(a) print() b = np.broadcast_to(a, (4, 4)) print(">>>") print(b.shape) print(b) >>> (1, 4) [[0 1 2 3]] >>> (4, 4) [[0 1 2 3] [0 1 2 3] [0 1 2 3] [0 1 2 3]]
numpy.swapaxes(arr,axis1, axis2)
其中:
arr:要交換其軸的輸入數組
axis1:對應第一個軸的整數
axis2:對應第二個軸的整數
numpy.rollaxis()函數向后滾動特定的軸,直到一個特定位置。這個函數接受三個參數:
numpy.rollaxis(arr,axis, start)
其中:
arr:輸入數組
axis:要向后滾動的軸,其它軸的相對位置不會改變
start:默認為零,表示完整的滾動。會滾動到特定位置。
a = np.arange(24).reshape(2, 3, 4) print(">>>") print(a.shape) print(a) print() roll = np.rollaxis(a, 2) # 把第2個軸滾動到0維位置 print(">>>") print(roll.shape) print(roll) print() roll2 = np.rollaxis(a, 2, 1) # 把第2個軸滾動到1維位置 print(">>>") print(roll2.shape) print(roll2) print() >>> (2, 3, 4) [[[ 0 1 2 3] [ 4 5 6 7] [ 8 9 10 11]] [[12 13 14 15] [16 17 18 19] [20 21 22 23]]] >>> (4, 2, 3) [[[ 0 4 8] [12 16 20]] [[ 1 5 9] [13 17 21]] [[ 2 6 10] [14 18 22]] [[ 3 7 11] [15 19 23]]] >>> (2, 4, 3) [[[ 0 4 8] [ 1 5 9] [ 2 6 10] [ 3 7 11]] [[12 16 20] [13 17 21] [14 18 22] [15 19 23]]]
concatenate:沿現有軸加入一系列數組
stack:沿新軸加入一系列數組,即stack(arrays, axis=0)
column_stack:把1維數組當作列堆疊成二維數組
為了向后兼容
dstack:沿深度方向堆疊數組
hstack:沿水平方法堆疊數組
vstack:沿垂直方向堆疊數組
“numpy中軸處理如何實現”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。