假设我有两个括号A和B:A和B可以表示为numpy阵列,两者都具有形状(N,M),即N行,M列。什么是最快的方法来组合和积A的每一行与B的每一行,使我们得到一个结果向量C的形状是(N*N,1)?愚蠢的方法是使用两个for循环,但我想知道Python中是否有更聪明的工具。
zpqajqem1#
根据@WarrenWeckesser(在我阅读更简单的方法之前,我正要跳到np.einsum答案中)
np.einsum
A = B = np.arange(6).reshape(2, 3) + 1 A array([[1, 2, 3], [4, 5, 6]]) (A @ B.T).reshape(-1, 1) array([[14], [32], [32], [77]])
字符串
1条答案
按热度按时间zpqajqem1#
根据@WarrenWeckesser(在我阅读更简单的方法之前,我正要跳到
np.einsum
答案中)字符串