Python根据另一个数组中的索引创建一个数组

All*_*len 1 python arrays

我有一个像这样的数组:

X= [[1,2,3],
    [3,2,1],
    [2,1,3]]
Run Code Online (Sandbox Code Playgroud)

现在我想创建另一个数组 Y。在 X 中的元素等于 2 的位置,Y 中的元素应取值 1,否则它们应取值 0。在此示例中,Y 应等于

Y=[[0,1,0],
   [0,1,0],
   [1,0,0]]
Run Code Online (Sandbox Code Playgroud)

sac*_*cuL 5

通过使用以下命令将大大促进(并加速)numpy

import numpy as np

Y = (np.array(X) == 2).astype(int)

>>> Y
array([[0, 1, 0],
       [0, 1, 0],
       [1, 0, 0]])
Run Code Online (Sandbox Code Playgroud)