2013-08-06 47 views
3

從2D numpy數組Z中,我想刪除某些要點,指示ix, iy
ix, iy目前的X指數和對應的y指數,順序列表,像這樣:從2D numpy數組中選擇一個子集

ix = range(10) 
iy = range(10,20,1) 

所以我想Z[0][10]Z[1][11]等放入一個新的列表或數組。

什麼是最好的(閱讀:最pythonic)這樣做的方式?也許有更好的方法來找到這些痕跡,所以我得到了一系列[ix,iy], [ix+1,iy+1]等?我已經看過this question。我不知道如何使用2維的選定答案的列表理解語法。

回答

2

現在不能考,但據我所知它可以像做Z[ix, iy]在numpy。
此外,您不必寫range(10,20,1),您可以使用range(10,20)

0
[Z[y][x] for x, y in zip(ix, iy)] 

(什麼zip(ix, iy)的作用是:使元組[(ix[0], iy[0]), (ix[1], iy[1]), ...]的列表,即x和y的指數爲每個需要的元素。)

+0

這工作過,但我有你如何定義x軸翻轉指數Z [X] [Y],這取決於。謝謝! – ehacinom

相關問題