说我有
Y = np.array([2, 0, 1, 1])
Run Code Online (Sandbox Code Playgroud)
由此我想获得与形状的矩阵X (len(Y), 3).在这种特殊情况下,X的第一行应该在第二个索引上有一个,而在其他情况下为零.X的第二行应该在0索引上有一个,否则为零.要明确:
X = np.array([[0, 0, 1], [1, 0, 0], [0, 1, 0], [0, 1, 0]])
Run Code Online (Sandbox Code Playgroud)
我该如何制作这个矩阵?我开始了
X = np.zeros((Y.shape[0], 3))
Run Code Online (Sandbox Code Playgroud)
但后来无法弄清楚如何填充/填写索引列表中的那些
一如既往,谢谢你的时间!
DSM*_*DSM 13
也许:
>>> Y = np.array([2, 0, 1, 1])
>>> X = np.zeros((len(Y), 3))
>>> X[np.arange(len(Y)), Y] = 1
>>> X
array([[ 0., 0., 1.],
[ 1., 0., 0.],
[ 0., 1., 0.],
[ 0., 1., 0.]])
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
454 次 |
| 最近记录: |