如何替换numpy数组中的值?

时间:2019-03-14 20:02:06

标签: python arrays numpy replace

我想替换np.array中的元素,例如:

arr = np.array([4,5,6,7,3])

我想用给定的值替换满足条件的每个元素,例如3 <= x <= 5。并将其替换为随机数,例如randint(90,99)。

因此,我的预期输出是:

[91 94  6  7 92]

我尝试过这样的事情:

out = np.where(arr>4, randint(90, 99), arr)

但是我有2个探针:
1)我不能指定间隔
2)我不能得到3个随机数-只能是一个

1 个答案:

答案 0 :(得分:0)

使用循环很简单:

j=0
for i in arr:
    if(3<=i and i<=5)
        arr[j]=99
        j+=1