那是numpy的工作
rollaxis
numpy也是scikit形象的核心。
或者更直观一些:
np.moveaxis
.
import numpy as np
a = np.arange(48).reshape((4, 4, 3))
print(a)
print(a.shape)
b = np.rollaxis(a, 2) # complete roll as 3rd argument void -> start=0
# or: b = np.moveaxis(a, 2, 0)
print(b)
print(b.shape)
print(a[2,3,0])
print(b[0,2,3])
输出:
[[[ 0 1 2]
[ 3 4 5]
[ 6 7 8]
[ 9 10 11]]
[[12 13 14]
[15 16 17]
[18 19 20]
[21 22 23]]
[[24 25 26]
[27 28 29]
[30 31 32]
[33 34 35]]
[[36 37 38]
[39 40 41]
[42 43 44]
[45 46 47]]]
(4, 4, 3)
[[[ 0 3 6 9]
[12 15 18 21]
[24 27 30 33]
[36 39 42 45]]
[[ 1 4 7 10]
[13 16 19 22]
[25 28 31 34]
[37 40 43 46]]
[[ 2 5 8 11]
[14 17 20 23]
[26 29 32 35]
[38 41 44 47]]]
(3, 4, 4)
33
33