簡體   English   中英

什么是python的zip(*)的numpy等價物?

[英]What's the numpy equivalent of python's zip(*)?

我認為(希望)這個問題與Python的numpy中的“zip()”相當於什么? 雖然這可能只是我的無知。

假設我有以下內容:

[[[ 1,  2],
  [ 3,  4],
  [ 5,  6]],
 [[ 7,  8],
  [ 9, 10],
  [11, 12]]]

我想把它變成

[[[ 1,  2],
  [ 7,  8]],
 [[ 3,  4],
  [ 9, 10]],
 [[ 5,  6],
  [11, 12]]]

在python我可以做:

>>> foo
[[[1, 2], [3, 4], [5, 6]], [[7, 8], [9, 10], [11, 12]]]
>>> zip(*foo)
[([1, 2], [7, 8]), ([3, 4], [9, 10]), ([5, 6], [11, 12])]

但是如何使用numpy數組(不使用zip(*))?

你真的需要返回元組,還是想重塑陣列?

>>> a
array([[[ 1,  2],
        [ 3,  4],
        [ 5,  6]],

       [[ 7,  8],
        [ 9, 10],
        [11, 12]]])

>>> a.swapaxes(0,1)
array([[[ 1,  2],
        [ 7,  8]],

       [[ 3,  4],
        [ 9, 10]],

       [[ 5,  6],
        [11, 12]]])

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM