[英]rearranging an array of arrays (python)
所以我有一個數組數組
[array([-0.05504106, 4.21890792]), array([-0.05504106, 4.21890792]), array([-0.0533802 , 4.10717668]), array([-0.0546635 , 4.19501313])]
我試圖做的是將其放入2個數組的數組中,其中的各個組件按如下方式組合在一起:
[array([-0.05504106, -0.05504106, -.0533802, -.0546635]), array([4.21890792, 4.21890792, 4.10717668, 4.19501313])
我嘗試了多種方法。 第一個如下:
for i in range(len(array_1)-1):
zipped = zip(array_1[i], array_1[i+1], array_1[i+2])
print zipped
然而,這種方法具有增加一個的缺點array_1[i+n]
為在每個附加陣列array_1
。 如果array_1
有許多數組,則根本不可行。
我嘗試的下一件事是嘗試將itertools.repeat
與上述代碼結合使用,如下所示:
for i in range(len(array_1)-1):
zipped = zip(itertools.repeat(array_1[i], len(array_1))
print zipped
但是,這沒有達到我想要的方式。
您能給我一些我如何完成這項任務的想法嗎? 我應該使用zip
和/或intertools.repeat
嗎?
我不確定您使用的是哪個array
類,但是通過簡單的列表,您可以使用zip:
a = [[-0.05504106, 4.21890792], [-0.05504106, 4.21890792], [-0.0533802, 4.10717668],[-0.0546635, 4.19501313]]
b = list(zip(*a)) #omit list in python2
print(b)
打印:
[(-0.05504106, -0.05504106, -0.0533802, -0.0546635), (4.21890792, 4.21890792, 4.10717668, 4.19501313)]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.