reshape
不改變原數據情況下修改形狀且創造一個新的np數組
numpy.reshape(a, newshape, order=‘C’)
a:要修改形狀的數組
newshape:整數或者整數數組,新的形狀應當兼容原有形狀
order:‘C’ – 按行,‘F’ – 按列,‘A’ – 原順序,‘k’ – 元素在內存中的出現順序。
a=[1,2,3,4,5,6]
b=np.reshape(a, (2,3),'C')
c=np.reshape(a, (2,3),'F')
print(a)
print(b)
print(c)
>>>
[1, 2, 3, 4, 5, 6]
[[1 2 3]
[4 5 6]] # 按行讀下來是123456
[[1 3 5]
[2 4 6]] # 按列讀下來是123456
ndarray調用
ndarray:N 維數組對象 ndarray,下面的np.array(a)就是將a化爲ndarray
ndarray.reshape(d1,d2…)
a=[1,2,3,4,5,6]
b=np.array(a).reshape( 2,3)
c=np.array(a).reshape(2,3)
transpose
對換數組的維度,倒置
ndarray.T
ndarray.transpose
a=[[1,2,3],
[4,5,6]]
b=np.array(a).transpose()
c=np.array(a).T
print(a)
print(b)
print(c)
>>>
[[1, 2, 3], [4, 5, 6]]
[[1 4]
[2 5]
[3 6]]
[[1 4]
[2 5]
[3 6]]
flatten
不改變原數據情況下修改爲1維且創造一個新的np數組
ndarray.flatten(order=‘C’)
order:‘C’ – 按行,‘F’ – 按列,‘A’ – 原順序,‘K’ – 元素在內存中的出現順序
a=[[1,2,3],
[4,5,6]]
b=np.array(a).flatten('C')
c=np.array(a).flatten('F')
print(a)
print(b)
print(c)
>>>
[[1, 2, 3], [4, 5, 6]]
[1 2 3 4 5 6]
[1 4 2 5 3 6]