dask.array.select

dask.array.select

dask.array.select(condlist, choicelist, default=0)[源代码]

根据条件从choicelist中返回一个元素数组。

此文档字符串是从 numpy.select 复制的。

Dask 版本可能存在一些不一致性。

参数
condlist布尔型 ndarray 列表

确定从 choicelist 中的哪个数组获取输出元素的条件列表。当多个条件满足时,使用 condlist 中遇到的第一个条件。

choicelistndarrays 列表

输出元素从中选取的数组列表。它必须与 condlist 的长度相同。

默认标量,可选

当所有条件评估为 False 时插入到 output 中的元素。

返回
输出ndarray

位置 m 处的输出是 choicelist 数组中的第 m 个元素,其中 condlist 中相应数组的第 m 个元素为 True。

参见

where

根据条件从两个数组中返回元素。

take, choose, compress, diag, diagonal

示例

>>> 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])