📅  最后修改于: 2023-12-03 15:19:13.866000             🧑  作者: Mango
numpy.matrix.take()
用于返回矩阵中指定维度的位置处的元素。 它的功能类似于使用数组索引来提取元素。 这个函数返回一个新的矩阵,其中包含取代元素的值。
numpy.matrix.take(indices, axis=None, out=None, mode='raise')
参数 | 描述 :--- | :--- indices | 用于提取元素的索引序列。 axis | 要沿其提取元素的轴。 默认值是 None,它意味着指定索引是一维的。 out | 可选参数。 要向其中放置结果的可选输出数组。 mode | 指定如何处理越界的索引。 默认情况下, 'raise' 引发一个 IndexError。 但是,如果设置了 'wrap',则索引会被解释为神经元。 如果设置为 'clip',则将索引剪切到允许的范围内。
返回指定位置处的元素的 numpy 矩阵。 它是原始矩阵的子集。 取代值仅取决于具体的 mode 参数的设置。
import numpy as np
a = np.matrix('[1, 2; 3, 4]')
print("Printing Matrix A")
print(a)
# Returns elements from 1st and 4th index and
# places in single row matrix
print("Retrieving elements from matrix A with indices 1 and 4")
print(a.take([1, 4]))
# using clip parameter on out of bound index
print("\nRetrieving elements from matrix A with indices out of bound")
print(a.take([2, 5], mode='clip'))
# using wrap parameter on out of bound index
print("\nRetrieving elements from matrix A with indices out of bound using wrap parameter")
print(a.take([2, 5], mode='wrap'))
# using axis parameter
print("\nRetrieving elements from matrix A using axis parameter with indices 0 and 1")
print(a.take([0, 1], axis=0))
该示例返回:
Printing Matrix A
[[1 2]
[3 4]]
Retrieving elements from matrix A with indices 1 and 4
[[2 4]]
Retrieving elements from matrix A with indices out of bound
[[3 4]]
Retrieving elements from matrix A with indices out of bound using wrap parameter
[[3 2]]
Retrieving elements from matrix A using axis parameter with indices 0 and 1
[[1 2]
[3 4]]