我正在尝试将一个numpy数组A转换为B,而不使用循环。
A=np.array([[1,2,3],
[1,3,0],
[2,0,0]])
B=np.array([[1,2,3],
[1,0,3],
[0,2,0]])
所以在每一行中,我想使用它们的值作为索引来重新排序条目。(例如,在第二行中,[1,3,0],1是第一个条目,3是第三个条目,而0将填充为第二个条目,使其成为[1,0,3])。
我可以针对单个行执行此操作,因此我可以循环遍历数组,但我想看看是否有一种方法可以在不使用循环的情况下完成此操作。我知道循环对于像这样的小型数组不会有任何区别,但当使用大型数组(1m,1m)时,我担心循环会创建瓶颈。
谢谢!
map
正在执行np.in1d(B[0], A[0])
,np.in1d(B[1], A[1])
,np.in1d(B[2], A[2])
,......这就是诀窍,;P。 - CT Zhu