2014-09-11 65 views
-1

假设你有一个numpy矩阵阵列,例如维数(n,m,m)的数组。把它看作n个大小为m×m的矩阵。有没有一种方法(不使用循环)一次计算每个矩阵的行列式?使用python计算矩阵行列式的行列式

+0

为什么这个问题被降低了吗?我发现这个问题和答案非常有用。 – ru111 2017-11-18 03:16:32

回答

0

可以计算使用numpy.linalg.det numpy的阵列的行列式如下所示:

import numpy as np 

N = 10 
M = 4 

# Generate N random MxM arrays 
arrays = np.array([np.random.random((M,M)) for _ in range(N)]) 

dets = np.linalg.det(arrays) 
print(dets) 
# array([-0.20353081, 0.01632881, -0.17733447, -0.01518313, -0.23457492, 
#  0.00284906, 0.16210605, 0.03887231, 0.07726804, -0.05107936]) 

在上面的例子我有4×4大小(作为一例随机生成)的10点矩阵。 dets是一个由10个数字组成的数组,它是您的决定因素。