我有一个如下所示的 numpy 数组:
a = np.array([[0.87, 1.10, 2.01, 0.81 , 0.64, 0. ],
[0.87, 1.10, 2.01, 0.81 , 0.64, 0. ],
[0.87, 1.10, 2.01, 0.81 , 0.64, 0. ],
[0.87, 1.10, 2.01, 0.81 , 0.64, 0. ],
[0.87, 1.10, 2.01, 0.81 , 0.64, 0. ],
[0.87, 1.10, 2.01, 0.81 , 0.64, 0. ]])
我喜欢通过将“左下”部分设置为零来进行操作。我不想通过行和列循环,而是想通过索引来实现这一点:
ix = np.array([[1, 1, 1, 1, 1, 1],
[0, 1, 1, 1, 1, 1],
[0, 0, 1, 1, 1, 1],
[0, 0, 0, 1, 1, 1],
[0, 0, 0, 0, 1, 1],
[0, 0, 0, 0, 0, 1]])
然而并没有像现在a[ix]
一样提供我所期望的,即添加了一个新维度。为了保持 的形状,我需要做什么,但左下角全为零?a[ix].shape
(6,6,6)
a