dask.array.argtopk
dask.array.argtopk¶
- dask.array.argtopk(a, k, axis=- 1, split_every=None)[源代码]¶
从给定轴上的数组中提取k个最大元素的索引,并按从大到小的顺序返回它们。如果k为负数,则提取-k个最小元素的索引,并按从小到大的顺序返回它们。
当
k远小于块大小时,此操作效果最佳。所有结果将沿给定轴以单个块的形式返回。- 参数
- x: 数组
数据正在排序
- k: int
- 轴: int, 可选
- split_every: int >=2, 可选
参见
topk()。topk 的性能考虑也适用于此处。
- 返回
- 选择沿给定轴的 x 的 np.intp 索引,大小为 abs(k)。
示例
>>> import dask.array as da >>> x = np.array([5, 1, 3, 6]) >>> d = da.from_array(x, chunks=2) >>> d.argtopk(2).compute() array([3, 0]) >>> d.argtopk(-2).compute() array([1, 2])