1 2 3 4 5
|
import numpy as np xarr = np.array([1.1, 1.2, 1.3, 1.4, 1.5]) yarr = np.array([2.1, 2.2, 2.3, 2.4, 2.5]) cond = np.array([True, False, True, True, False]) result = np.where(cond, xarr, yarr)
|
array([ 1.1, 2.2, 1.3, 1.4, 2.5])
where函数典型的用法是给予一个array产生另一个array,如下列:
1
|
arr = np.random.randn(4, 4)
|
array([[-2.5264061 , 0.31600076, -0.3584314 , 1.1104543 ],
[-0.36526226, 1.35603517, -0.17306545, -1.91238476],
[ 0.89170697, -0.23551787, -0.78883913, -0.76915407],
[-0.2233249 , -0.67969266, -0.64915308, -1.46796594]])
array([[False, True, False, True],
[False, True, False, False],
[ True, False, False, False],
[False, False, False, False]], dtype=bool)
1
|
np.where(arr > 0, 2, -2)
|
array([[-2, 2, -2, 2],
[-2, 2, -2, -2],
[ 2, -2, -2, -2],
[-2, -2, -2, -2]])
1
|
np.where(arr > 0, 2, arr)
|
array([[-2.5264061 , 2. , -0.3584314 , 2. ],
[-0.36526226, 2. , -0.17306545, -1.91238476],
[ 2. , -0.23551787, -0.78883913, -0.76915407],
[-0.2233249 , -0.67969266, -0.64915308, -1.46796594]])
近期评论