索引例程#

生成索引数组#

c_ 

将切片对象转换为沿第二个轴连接.

r_ 

将切片对象转换为沿第一轴的连接.

s_ 

构建数组索引元组的一种更友好的方式.

nonzero (a)

返回非零元素的索引.

where (condition, [x, y], /)

返回从 xy 中选择的元素,具体取决于 condition .

indices (dimensions[, dtype, sparse])

返回表示网格索引的数组.

ix_ (args)

从多个序列构造一个开放网格.

ogrid 

一个实例,返回一个开放的多维"meshgrid".

ravel_multi_index (multi_index, dims[, mode, ...])

将索引数组的元组转换为平面索引数组,并将边界模式应用于多重索引.

unravel_index (indices, shape[, order])

将扁平索引或扁平索引数组转换为坐标数组的元组.

diag_indices (n[, ndim])

返回用于访问数组主对角线的索引.

diag_indices_from (arr)

返回访问n维数组主对角线的索引.

mask_indices (n, mask_func[, k])

返回索引以访问 (n, n) 数组,给定一个屏蔽函数.

tril_indices (n[, k, m])

返回 (n, m) 数组的下三角的索引.

tril_indices_from (arr[, k])

返回arr的下三角的索引.

triu_indices (n[, k, m])

返回 (n, m) 数组的上三角的索引.

triu_indices_from (arr[, k])

返回 arr 上三角的索引.

类似索引的操作#

take (a, indices[, axis, out, mode])

从数组中沿轴提取元素.

take_along_axis (arr, indices[, axis])

通过匹配一维索引和数据切片,从输入数组中提取值.

choose (a, choices[, out, mode])

从索引数组和一个要从中选择的数组列表中构造一个数组.

compress (condition, a[, axis, out])

沿给定轴返回数组的选定切片.

diag (v[, k])

提取对角线或构造对角线数组.

diagonal (a[, offset, axis1, axis2])

返回指定的对角线.

select (condlist, choicelist[, default])

返回从 choicelist 中的元素绘制的数组,具体取决于条件.

向数组中插入数据#

place (arr, mask, vals)

基于条件和输入值更改数组的元素.

put (a, ind, v[, mode])

用给定的值替换数组的指定元素.

put_along_axis (arr, indices, values, axis)

通过匹配 1d 索引和数据切片将值放入目标数组中.

putmask (a, mask, values)

根据条件和输入值更改数组的元素.

fill_diagonal (a, val[, wrap])

填充给定任意维数组的主对角线.

迭代数组#

nditer (op[, flags, op_flags, op_dtypes, ...])

用于迭代数组的高效多维迭代器对象.

ndenumerate (arr)

多维索引迭代器.

ndindex (shape)

一个 N 维迭代器对象,用于索引数组.

nested_iters (op, axes[, flags, op_flags, ...])

创建用于嵌套循环的 nditer

flatiter ()

用于迭代数组的扁平迭代器对象.

iterable (y)

检查对象是否可以迭代.