numpy.select#
- numpy.select(condlist, choicelist, default=0)[source]#
根据条件返回从 choicelist 中元素构成的数组。
- 参数:
- condlist布尔型 ndarray 列表
确定从 choicelist 中哪个数组获取输出元素的条件列表。当多个条件满足时,使用 condlist 中遇到的第一个条件。
- choicelistndarray 列表
从中获取输出元素的数组列表。它必须与 condlist 的长度相同。
- default标量,可选
当所有条件都计算为 False 时,插入到 output 中的元素。
- 返回:
- outputndarray
位置 m 处的输出是 choicelist 中数组的第 m 个元素,其中 condlist 中对应数组的第 m 个元素为 True。
示例
>>> import numpy as np
从一个包含 0 到 5(包含)的整数数组开始,小于
3
的元素取反,大于3
的元素平方,不满足这两个条件的元素(正好是3
)用42
的默认值替换。>>> x = np.arange(6) >>> condlist = [x<3, x>3] >>> choicelist = [x, x**2] >>> np.select(condlist, choicelist, 42) array([ 0, 1, 2, 42, 16, 25])
当多个条件满足时,使用 condlist 中遇到的第一个条件。
>>> condlist = [x<=4, x>3] >>> choicelist = [x, x**2] >>> np.select(condlist, choicelist, 55) array([ 0, 1, 2, 3, 4, 25])