迭代2d numpy数组,直到它只包含一些特定值

时间:2018-05-23 13:46:37

标签: python numpy

我有一个2d numpy数组,每个单元格中都包含浮点数。

我想迭代它并更改每个单元格的值(如果匹配特定条件),直到它只包含值 1 -1 ,或每个单元格中 NaN

我怎样才能做到这一点?

1 个答案:

答案 0 :(得分:1)

在numpy中,您可以使用条件索引。即:

import numpy as np
x = np.arange(10)
c =  x > 5 
print c

将给出

array([False, False, False, False, False, False,  True,  True,  True,  
True], dtype=bool)

最后使用条件

x[c] = -1
print x

给出array([ 0, 1, 2, 3, 4, 5, -1, -1, -1, -1])