如何用numpy进行数组查找/替换?

ajw*_*ood 5 python numpy

我有一个2D numpy数组,A包含另一个数组的索引,B.什么是C从numpy 获得AB使用numpy 的好方法?

A = array([[1, 1, 0, 2],
           [1, 0, 0, 2],
           [1, 1, 0, 2]])

B = array([0, 5, 3])

C = array([[5, 5, 0, 3],
           [5, 0, 0, 3],
           [5, 5, 0, 3]])
Run Code Online (Sandbox Code Playgroud)

Jos*_*del 10

这个怎么样C = B[A].那是numpy的美丽:

In [1]: import numpy as np
In [2]: A = np.array([[1, 1, 0, 2],
   ...:            [1, 0, 0, 2],
   ...:            [1, 1, 0, 2]])

In [3]: B = np.array([0, 5, 3])

In [4]: B[A]
Out[4]: 
array([[5, 5, 0, 3],
       [5, 0, 0, 3],
       [5, 5, 0, 3]])
Run Code Online (Sandbox Code Playgroud)