首页 > 解决方案 > 原始和列上相同 idx 的 Numpy 选择

问题描述

今天遇到一个奇怪的选择:

import numpy as np

A = np.array([[1, 2, 3], 
              [4, 5, 6], 
              [7, 8, 9]])

idx = [0, 1]

A[idx, idx]
A[idx, :][:, idx]

我不明白第一个选择的输出A[idx, idx]array([1, 5])

标签: pythonnumpynumpy-ndarray

解决方案


你这样做:

A[[0, 1], [0, 1]]

基本上是:

[A[0, 0], A[1, 1]]

在您的示例数据中当然是 [1, 5] 。

NumPy 将此称为“整数高级索引”。


推荐阅读