在python中,是否有任何方法可以同时计算多个2d矩阵的L2范数?
例如,我有一个维度矩阵(a,b,c,d)。我想计算所有d维度矩阵(a,b,c)的L2范数。有没有办法在不使用任何循环结构的情况下使用在python中,是否有任何方法可以同时计算多个2d矩阵的L2范数?,python,numpy,Python,Numpy,例如,我有一个维度矩阵(a,b,c,d)。我想计算所有d维度矩阵(a,b,c)的L2范数。有没有办法在不使用任何循环结构的情况下使用numpy.linalg.norm? 我的意思是,结果数组应该是1xd这个怎么样 import numpy as np mat = np.arange(2*3*4*5).reshape(2,3,4,5) # create 4d array mat2 = np.moveaxis(mat,-1,0) # bring last axis to
numpy.linalg.norm
?
我的意思是,结果数组应该是1xd这个怎么样
import numpy as np
mat = np.arange(2*3*4*5).reshape(2,3,4,5) # create 4d array
mat2 = np.moveaxis(mat,-1,0) # bring last axis to the front
*outarr, = map(np.linalg.norm,mat2) # use map
谢谢你,回答得很好。我刚刚检查了我的数据,答案是正确的。虽然映射步骤对我来说有点难理解。感谢您理解迭代器和iterables。然后地图就会清晰了。