来自索引数组的python numpy数组

标签 python arrays numpy indexing

我有一个 3d 数组 a = np.arange(108).reshape(6, 6, 3)。我想获取数组的某些索引,如 i = np.array([[0, 1], [1, 3], [2, 1]]) 所定义,这样结果是[[3,4,5],[27,28,29],[39,40,41]]。我需要一种有效的方法来做到这一点,因为我的实际数组要大得多。

最佳答案

i中提取第一和第二维度索引,然后使用advanced indexing :

a[i[:,0], i[:,1], :]   # or a[i[:,0], i[:,1]]

#array([[ 3,  4,  5],
#       [27, 28, 29],
#       [39, 40, 41]])

关于来自索引数组的python numpy数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48393977/

相关文章:

python - 向量化函数 (Python)

python - 如何在 request.POST 中获取文件名?

python - 如何创建具有方位角、天顶角和平均权重值的极坐标图?

python - 我想在文件中的 2 个字符串之间添加一个字符串,但在输出中整个文本被 append 在文件末尾

python - 如何在 python 类中使用参数或构造函数值

python - 用于在 python 中循环数组 - 来自 matlab

arrays - 从 Ruby 中的列表中获取对的所有组合

python - 使用 numpy 和 matplotlib 进行 13 维矩阵的 KDE(核密度估计)

python - 使用 numpy 中的小数步长调整大小

c - 尝试删除 C 中字符数组中的最后一个字符