例1 单条件下的替换
方法一:输入
import numpy as np
a = np.arange(9).reshape((3,3))
a[a==4] = 1
print(a)
输出
[[0 1 2]
[3 1 5]
[6 7 8]]
方法二:np.where(condition)
输入
a = np.arange(9).reshape((3,3))
a[np.where(a==0)] = 1
print(a)
输出
[[1 1 2]
[3 4 5]
[6 7 8]]
其中np.where(condition, x, y)
满足条件(condition),输出x,不满足输出y。
例2 多条件下的替换
每个条件需加括号,且并列关系需用&(and)、|(or)
方法一:输入
import numpy as np
a = np.arange(9).reshape((3,3))
a[(a<7)&(a>3)] = 1
print(a)
输出
[[0 1 2]
[3 1 1]
[1 7 8]]
方法二:输入
a = np.arange(9).reshape((3,3))
a[np.where((a<2)|(a>7))]=1
print(a)
输出
[[1 1 2]
[3 4 5]
[6 7 1]]