0
我有a=[[1 2 ... 3][4 5 ... 6]...[7 8 ... 9]]
。
我需要a=[[[1 1 1] [2 2 2] ... [3 3 3]][[4 4 4] [5 5 5] ... [6 6 6]]...[[7 7 7] [8 8 8] ... [9 9 9]]]
Python將numpy數組轉換爲元組
我基本上需要a
中的每個元素成爲它自己的3個值的元組。在柱狀版本
我有a=[[1 2 ... 3][4 5 ... 6]...[7 8 ... 9]]
。
我需要a=[[[1 1 1] [2 2 2] ... [3 3 3]][[4 4 4] [5 5 5] ... [6 6 6]]...[[7 7 7] [8 8 8] ... [9 9 9]]]
Python將numpy數組轉換爲元組
我基本上需要a
中的每個元素成爲它自己的3個值的元組。在柱狀版本
map(tuple,np.tile(a.ravel()[:,None],(1,3)))
如果您正在尋找如在問題的預期輸出中列出的3D
數組,你可以這樣做 -
np.tile(a[:,:,None],(1,1,3))
採樣運行 -
In [32]: a
Out[32]:
array([[1, 2, 3],
[4, 5, 6],
[7, 8, 9]])
In [33]: map(tuple,np.tile(a.ravel()[:,None],(1,3)))
Out[33]:
[(1, 1, 1),
(2, 2, 2),
(3, 3, 3),
(4, 4, 4),
(5, 5, 5),
(6, 6, 6),
(7, 7, 7),
(8, 8, 8),
(9, 9, 9)]
In [34]: np.tile(a[:,:,None],(1,1,3))
Out[34]:
array([[[1, 1, 1],
[2, 2, 2],
[3, 3, 3]],
[[4, 4, 4],
[5, 5, 5],
[6, 6, 6]],
[[7, 7, 7],
[8, 8, 8],
[9, 9, 9]]])
有任何方法可以得到方括號和逗號嗎? :p – Sibi
@Sibi沒有地圖的情況下使用:'np.tile(a.ravel()[:, None],(1,3))''。 – Divakar
你正在處理['np.matrix'或'np.array'](http://stackoverflow.com/questions/4151128/what-are-the-differences-between-numpy-arrays-and-matrices-哪個 - 酮應該-IU)? – Divakar