gpt4 book ai didi

python - Numpy 索引 : Get every second coloumn for each even row

转载 作者:太空宇宙 更新时间:2023-11-04 01:05:18 25 4
gpt4 key购买 nike

我想在一个 numpy 数组中选择所有奇数对角线。主要有以下几点:

a = np.arange(16).reshape(4,4)
array([[ 0, 1, 2, 3],
[ 4, 5, 6, 7],
[ 8, 9, 10, 11],
[12, 13, 14, 15]])
b = a[::2,1::2] and at the same time a[1::2,::2]
array([[ 1, 3],
[ 4, 6],
[9, 11],
[12,14]])

换句话说:在每个偶数行中,我希望每个第二列的偏移量为 1,而在每个奇数行中,我希望每个第二列都有偏移量。如果可以在不创建额外副本的情况下实现这一点,那就太好了。

最佳答案

好吧,如果我们无法避免任何复制,那么最简单的事情可能是这样的:

a = np.arange(16).reshape(4,4)
array([[ 0, 1, 2, 3],
[ 4, 5, 6, 7],
[ 8, 9, 10, 11],
[12, 13, 14, 15]])
b = np.zeros((a.shape[0], a.shape[1]/2))
b[::2,:] = a[::2,1::2]
b[1::2,:] = a[1::2,::2]
>>>> b
array([[ 1., 3.],
[ 4., 6.],
[ 9., 11.],
[ 12., 14.]])

关于python - Numpy 索引 : Get every second coloumn for each even row,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30755775/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com