我有一个形状(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, :])