numpy:按索引向量从矩阵中选择列

时间:2019-05-01 14:12:19

标签: numpy indexing numpy-slicing

我有一个带有数据的2D numpy数组X和一个带有列索引的1D numpy数组y

X = [[ 1,  2,  3],
     [ 4,  5,  6],
     [ 7,  8,  9],
     [10, 11, 12]]

y =  [0, 2, 1, 0]

对于i中的每一行X,我想选择第y[i]列。

我想要得到什么:

z = [1, 6, 8, 10]

我尝试过z = X[:,y],但是它为每一行选择了所有列0、2、1、0,并给了我一个z,形状为(4,4)。

我可以简单地使用for循环来做到这一点,但是必须有某种“麻木式”的方式。

0 个答案:

没有答案