擅长:python、mysql、java
<p>该代码将获得每个矩阵的特征值和特征向量:</p>
<pre><code>import numpy as np
class c1:
def __init__(self):
self.mat1 = np.array([[11,21],[31,41]])
self.mat2 = np.array([[1,2],[3,4]])
mat1_vals, mat2_vals = list(map(lambda mat: np.linalg.eig(mat), [self.mat1, self.mat2]))
self.eigVal = [mat1_vals[0], mat2_vals[0]]
self.eigVec = [mat1_vals[1], mat2_vals[1]]
print('Eig Vals: ', self.eigVal)
print('Eig Vecs:', self.eigVec)
if __name__=='__main__':
c1()
</code></pre>
<p><strong>输出</strong></p>
<pre><code>Eig Vals: [array([-3.59729717, 55.59729717]), array([-0.37228132, 5.37228132])]
Eig Vecs: [array([[-0.82111408, -0.42601354],
[ 0.57076411, -0.90471679]]), array([[-0.82456484, -0.41597356],
[ 0.56576746, -0.90937671]])]
</code></pre>
<p>需要注意的是,您必须<code>map</code>某个<code>iterable</code>对象上的<code>lambda</code>函数,然后将<code>map</code>对象转换为iterable以使用它</p>
<p>干杯</p>