gpt4 book ai didi

python - 选择二维 NumPy 数组的 "corner"个元素

转载 作者:行者123 更新时间:2023-11-28 21:37:44 25 4
gpt4 key购买 nike

我正在尝试提取 NumPy 二维数组的四个角元素:

import numpy as np
data = np.arange(16).reshape((4, -1))
#array([[ 0, 1, 2, 3],
# [ 4, 5, 6, 7],
# [ 8, 9, 10, 11],
# [12, 13, 14, 15]])

预期的输出是 [[0,3],[12,15]][0,3,12,15] (什么都可以)。真正的 2D fancy 索引只提供主对角线的末端:

data[[0,-1],[0,-1]]
#array([ 0, 15])

伪二维 fancy 索引(首先按行,然后按列)提供了正确的答案,但看起来很尴尬:

data[[0,-1]][:,[0,-1]]
#array([[ 0, 3],
# [12, 15]])

有没有办法使用真正的fancy索引,比如data[XXX,YYY],其中XXXYYY 是列表/数组/切片,提取所有四个角?

最佳答案

你可以这样做:

data[[0, 0, -1, -1], [0, -1, 0, -1]]

关于python - 选择二维 NumPy 数组的 "corner"个元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49060724/

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