如何在python中将函数(矩阵->;标量)应用于numpy数组
假设我有三维numpy数组如何在python中将函数(矩阵->;标量)应用于numpy数组,python,arrays,numpy,Python,Arrays,Numpy,假设我有三维numpy数组a,例如: 将numpy导入为np a=np.random.randn(3,3,3) 如何将(矩阵->标量)类型函数应用于a?更具体地说,我想以一种计算效率更高的方式做一件类似的事情,如下所示: [np.linalg.det(e)表示a中的e] np.linalg.det(a)似乎工作得很好,并且运行时明显更好: a = np.random.rand(100,3,3) %timeit -n 100 [np.linalg.det(e) for e in a] 626
a
,例如:
将numpy导入为np
a=np.random.randn(3,3,3)
如何将(矩阵->标量)类型函数应用于a
?更具体地说,我想以一种计算效率更高的方式做一件类似的事情,如下所示:
[np.linalg.det(e)表示a中的e]
np.linalg.det(a)
似乎工作得很好,并且运行时明显更好:
a = np.random.rand(100,3,3)
%timeit -n 100 [np.linalg.det(e) for e in a]
626 µs ± 26.9 µs per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit -n 100 np.linalg.det(a)
33.9 µs ± 7.08 µs per loop (mean ± std. dev. of 7 runs, 100 loops each)