从阵列形成一对非连续元素

时间:2014-08-10 22:38:24

标签: python numpy

有多个生成器表达式示例,从本网站的列表中产生成对的连续元素。但是,我想做一些不同的事情:

给定np.arange(6),我想输出[[0, 3], [1, 4], [2, 5]](此处,以列表的形式,但listnp.ndarray输出格式都可以。

当然,我可以使用for循环和快速而简单的numpy索引来做到这一点,但是有更优雅(并且希望更快)的方式吗?谢谢!

1 个答案:

答案 0 :(得分:5)

您可以在指定Fortran顺序时使用reshape(第一个索引更改最快):

In [104]: np.arange(6).reshape(3, -1, order='F')
Out[104]: 
array([[0, 3],
       [1, 4],
       [2, 5]])