numpy.linalg.eig() 计算矩阵特征向量方式

yipeiwu_com6年前Python基础

在PCA中有遇到,在这里记录一下

计算矩阵的特征值个特征向量,下面给出几个示例代码:

在使用前需要单独import一下

>>> from numpy import linalg as LA
>>> w, v = LA.eig(np.diag((1, 2, 3)))
>>> w; v
array([ 1., 2., 3.])
array([[ 1., 0., 0.],
    [ 0., 1., 0.],
    [ 0., 0., 1.]])
>>> w, v = LA.eig(np.array([[1, -1], [1, 1]]))
>>> w; v
array([ 1. + 1.j, 1. - 1.j])
array([[ 0.70710678+0.j    , 0.70710678+0.j    ],
    [ 0.00000000-0.70710678j, 0.00000000+0.70710678j]])
>>> a = np.array([[1, 1j], [-1j, 1]])
>>> w, v = LA.eig(a)
>>> w; v
array([ 2.00000000e+00+0.j,  5.98651912e-36+0.j]) # i.e., {2, 0}
array([[ 0.00000000+0.70710678j, 0.70710678+0.j    ],
    [ 0.70710678+0.j    , 0.00000000+0.70710678j]])
>>> a = np.array([[1 + 1e-9, 0], [0, 1 - 1e-9]])
>>> # Theor. e-values are 1 +/- 1e-9
>>> w, v = LA.eig(a)
>>> w; v
array([ 1., 1.])
array([[ 1., 0.],
    [ 0., 1.]])

官方文档链接:http://docs.scipy.org/doc/numpy/reference/generated/numpy.linalg.eig.html

以上这篇numpy.linalg.eig() 计算矩阵特征向量方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python+mysql实现简单的web程序

这次要为我的python程序加上数据库,主要是实现从mysql中查询出数据并在页面上显示出来。 首先是mysql的配置文件config.py host="127.0.0.1" use...

举例讲解Python中的死锁、可重入锁和互斥锁

一、死锁 简单来说,死锁是一个资源被多次调用,而多次调用方都未能释放该资源就会造成死锁,这里结合例子说明下两种常见的死锁情况。 1、迭代死锁 该情况是一个线程“迭代”请求同一个资源,直接...

python标准算法实现数组全排列的方法

本文实例讲述了python标准算法实现数组全排列的方法,代码来自国外网站。分享给大家供大家参考。具体分析如下: 从n个不同元素中任取m(m≤n)个元素,按照一定的顺序排列起来,叫做从n个...

Python读写文件模式和文件对象方法实例详解

Python读写文件模式和文件对象方法实例详解

本文实例讲述了Python读写文件模式和文件对象方法。分享给大家供大家参考,具体如下: 一. 读写文件模式 利用open() 读写文件时,将会返回一个 file 对象,其基本语法格式如...

python调用百度语音识别api

python调用百度语音识别api

最近在处理语音检索相关的事。 其中用到语音识别,调用的是讯飞与百度的api,前者使用js是实现,后者用python3实现(因为自己使用python) 环境: python3.5 ce...