[英]How do I convert a 2D numpy array into a 1D numpy array of 1D numpy arrays?
[英]How to efficiently convert 2d numpy array into 1d numpy array of tuples?
為了有效地矢量化此變換,請進行轉置
a = np.array([[ 0 , 1],
[ 1 , 1],
[ 2 , 1],
[ 0 , 1],
[ 1 , 1],
[ 2 , 1] ])
at = a.T
at= array([[0, 1, 2, 0, 1, 2],
[1, 1, 1, 1, 1, 1]])
然后zip
以將兩個一維列表轉換為元組列表
zip(at[0],at[1])
這將比列表理解快得多
但是在python 3.4中
list(zip(at[0],at[1])
Out []:
[(0, 1), (1, 1), (2, 1), (0, 1), (1, 1), (2, 1)]
編輯:感謝@Divakar
通過直接切片可能稍微快一點: zip(a[:,0], a[:,1])
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.