假设我有这个numpy矩阵:
>>> mat = np.matrix([[3,4,5,2,1], [1,2,7,6,5], [8,9,4,5,2]])
>>> mat
matrix([[3, 4, 5, 2, 1],
[1, 2, 7, 6, 5],
[8, 9, 4, 5, 2]])现在假设我有一些这种形式的索引:
>>> ind = np.matrix([[0,2,3], [0,4,2], [3,1,2]])
>>> ind
matrix([[0, 2, 3],
[0, 4, 2],
[3, 1, 2]])我想要做的是从矩阵的每一行获得三个值,特别是第一行的第0、2和3列的值,第二行的第0、4和2列的值,等等。这是预期的输出:
matrix([[3, 5, 2],
[1, 5, 7],
[5, 9, 4]])我试过使用np.take,但似乎不起作用。有什么建议吗?
发布于 2021-07-23 22:16:40
>>> np.take_along_axis(mat, ind, axis=1)
matrix([[3, 5, 2],
[1, 5, 7],
[5, 9, 4]])https://stackoverflow.com/questions/68500457
复制相似问题