索引例程#

另请参见

ndarray 的索引

生成索引数组#

c_

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

r_

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

s_

一种更简洁的方式来构建数组的索引元组。

nonzero(a)

返回非零元素的索引。

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

根据condition返回从xy中选择的元素。

indices(dimensions[, dtype, sparse])

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

ix_(*args)

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

ogrid

一个返回开放多维“网格”的实例。

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)

通过匹配一维索引和数据切片将值放入目标数组。

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)

检查对象是否可迭代。