arr = np.array(range(12))
arr = arr.reshape((4,3))
keys = np.array([1,0,1,2])
arr[np.arange(4), np.array([1,0,1,2])]
打印:
array([ 1, 3, 7, 11]).
据我所知,这是根据索引(1,1)(0,0)(1,1)(2,2)
进行排序 但是怎么样?我不是指任何变量。我正在调用函数np.array,而且它指的是我指的是arr的索引。为什么不创建新阵列?答案 0 :(得分:0)
它没有排序。它是从数组中选择元素。
这两个列表中的行索引和列索引是配对的,
[0,1,2,3], [1,0,1,2]
它返回4个元素
arr[(0,1)], arr[(1,0)], arr[(2,1)], arr[(3,2)]