的選定索引我有兩個隨機索引發生器,從0到3numpy的應用功能,以矩陣
idx_1 = np.random.choice(4, 2, replace=False)
idx_2 = np.setdiff1d(range(4), idx_1)
和我有3D numpy的陣列,example_array,製成層疊4點矩陣一起,和2層的功能的,說func1和func2。
我要像做
example_array[idx1[0]] = func1(example_array[idx1[0]])
example_array[idx1[1]] = func1(example_array[idx1[1]])
example_array[idx2[0]] = func2(example_array[idx2[0]])
example_array[idx2[1]] = func2(example_array[idx1[0]])
什麼是這樣做的一個快速的方式,沒有明確寫他們如上?
什麼是你的函數的輸出?標量或其他矩陣? –
輸出是矩陣。 – Qubix
'example_array [idx1]'產生一個新的數組,其第一維由'idx_'調整大小。如果你的'func1'可以用3d陣列工作,這個問題是微不足道的。如果它限制爲2d,那麼你必須在第一維上進行某種迭代,如你所做的那樣,或者在range():'循環中使用'for i。 – hpaulj