将值分配给numpy.array

时间:2017-04-05 11:20:38

标签: python numpy

假设我们创建了这个np.array:

A = np.arange(12).reshape(3, 4)

所以,A是:

array([[ 0,  1,  2,  3],
       [ 4,  5,  6,  7],
       [ 8,  9, 10, 11]])

我想为A分配一些值:

A[[0,2]][:,[1,3]] = 9999

为了获得:

array([[ 0,  9999,  2,  9999],
       [ 4,  5,  6,  7],
       [ 8,  9999, 10, 9999]])

但这不起作用。这样做的正确方法是什么?

由于

1 个答案:

答案 0 :(得分:1)

你可以使用np.ix_来获取那些用于索引数组的开放网格,它们可以broadcasted,因此可以用来为它分配值,就像这样 -

A[np.ix_([0,2],[1,3])] = 9999
相关问题