给定一个N-by-L数组A和一个P-by-L数组B,我想计算P-by-L数组C where C[j, :] = sum(A[i, :] * B[i, j, :] for i in range(N))。从数学上讲,这在某种程度上等同于从左侧将矩阵A乘以B,其中矩阵的元素是长度为L的向量,并且两个向量的乘法实际上定义为它们的逐点乘法。执行上述计算的for-based解决方案为:
存在一个形状为[100,50, 5]的numpy ndarry A,我想按如下方式展开A。A将被追加一个形状为(50, )的一维数组。生成的A将具有形状[100,50,6]。该一维数组的元素基于原始ndarray中的数组,即,根据给定公式的A[:,:,4],即,A[:,i,5]=A[:,i,4]*B[i]+5 for i = 0:49这里的A[:,:,5]对应于相加的