Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/335.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在python中将函数(矩阵->;标量)应用于numpy数组_Python_Arrays_Numpy - Fatal编程技术网

如何在python中将函数(矩阵->;标量)应用于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

假设我有三维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 µ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)