在范围内重新分类python中的numpy数组

时间:2016-01-11 23:53:33

标签: python arrays numpy

我在Python中有一个numpy数组,我需要在一系列值(> = 2到< 5 = 100)之间进行分类。我收到了错误消息,但我不理解a.any() or a.all()

的用法
    import numpy as np
    myarray = np.array([[1,2,3,4,5],[1,2,3,4,5],[1,2,3,4,5]])
    myarray[myarray >= 2 and myarray < 5] = 100

    Traceback (most recent call last):
          File "<input>", line 1, in <module>
        ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()

1 个答案:

答案 0 :(得分:6)

你太近了。

>>> myarray[(myarray >= 2) & (myarray < 5)] = 100
>>> myarray
array([[  1, 100, 100, 100,   5],
       [  1, 100, 100, 100,   5],
       [  1, 100, 100, 100,   5]])