我有一個形狀(n,d)的矩陣Y.我已經計算出下列方式兩兩行的差別:在三維陣列中放入矩陣行的成對差異
I, J = np.triu_indices(Y.shape[0], 0)
rowDiffs = (Y[I, :] - Y[J, :])
不,我想創建一個三維數組,其中包含的行的差異我在位置(I,Jÿj的,:) 。你會怎麼做?
的它的目的是,以取代此低效循環:
for i in range(Y.shape[0]):
for j in range(Y.shape[0]):
C[i,:] = C[i,:] + W[i, j] * (Y[i, :]-Y[j, :])