在MATLAB中,计算矩阵A的特征值和特征向量的函数是eig(A),常用的调用格式有

5种:
(1) E=eig(A):求矩阵A的全部特征值,构成向量E。

想求最大特征值用:max(eig(A))就好了。
(2) [V,D]=eig(A):求矩阵A的全部特征值,构成对角阵D,并求A的特征向量构成

V的列向量。
(3) [V,D]=eig(A,'nobalance'):与第2种格式类似,但第2种格式中先对A作相似

变换后求矩阵A的特征值和特征向量,而格式3直接求矩阵A的特征值和特征向量。

(4) E=eig(A,B):由eig(A,B)返回N×N阶方阵A和B的N个广义特征值,构成向量E


(5) [V,D]=eig(A,B):由eig(A,B)返回方阵A和B的N个广义特征值,构成N×N阶对

角阵D,其对角线上的N个元素即为相应的广义特征值,同时将返回相应的特征向

量构成N×N阶满秩矩阵,且满足AV=BVD。

eig

Find eigenvalues and eigenvectors
Syntax

d = eig(A)
d = eig(A,B)
[V,D] = eig(A)
[V,D] = eig(A,'nobalance')
[V,D] = eig(A,B)
[V,D] = eig(A,B,flag)

d = eig(A)和 [V,D] = eig(A)最为常用 注意,第一列为对应第一个特征值的特征向量,比如:

B=rand(4)

B =

0.5653    0.7883    0.1365    0.9749
    0.2034    0.5579    0.3574    0.6579
    0.5070    0.1541    0.9648    0.0833
    0.5373    0.7229    0.3223    0.3344

>> [a,b]=eig(B)

a =

-0.6277   -0.3761   -0.7333    0.7110
   -0.4304   -0.5162    0.2616   -0.2155
   -0.4297    0.1563    0.6049   -0.6471
   -0.4859    0.7534   -0.1672    0.1713

b =

1.9539         0         0         0
         0   -0.3623         0         0
         0         0    0.3937         0
         0         0         0    0.4370

则1.9539对应的特征向量为:

-1.2265
   -0.8410
   -0.8396
   -0.9494

归一化处理:

用Excle就能做,原理很简单,举例:

将以下特征向量归一化

-1.2265
   -0.8410
   -0.8396
   -0.9494

-------在Excle表格里输入:----------

=-1.2265/sum(-1.2265,-0.8410,-0.8396,-0.9494)

=-0.8410/sum(-1.2265,-0.8410,-0.8396,-0.9494)

=-0.8396/sum(-1.2265,-0.8410,-0.8396,-0.9494)

=-0.9494/sum(-1.2265,-0.8410,-0.8396,-0.9494)

转自(

fvan的博客

)

eig()函数求特征值、特征向量、归一化的更多相关文章

  1. C++调用Matlab函数求特征值

    最近需要用到C++和Matlab的混编,记录一下学习过程~ 要实现的是调用Matlab函数,求矩阵前k个最小的特征值及其特征向量. //C++ #include "engine.h" ...

  2. PCA算法是怎么跟协方差矩阵/特征值/特征向量勾搭起来的?

    PCA, Principle Component Analysis, 主成份分析, 是使用最广泛的降维算法. ...... (关于PCA的算法步骤和应用场景随便一搜就能找到了, 所以这里就不说了. ) ...

  3. Matlab中的eig函数和Opecv中eigen()函数的区别

    奇异值分解的理论参见下面的链接 http://www.cnblogs.com/pinard/p/6251584.html https://blog.csdn.net/shenziheng1/artic ...

  4. QR分解迭代求特征值——原生python实现(不使用numpy)

    QR分解: 有很多方法可以进行QR迭代,本文使用的是Schmidt正交化方法 具体证明请参考链接 https://wenku.baidu.com/view/c2e34678168884868762d6 ...

  5. BZOJ2818: Gcd 欧拉函数求前缀和

    给定整数N,求1<=x,y<=N且Gcd(x,y)为素数的数对(x,y)有多少对. 如果两个数的x,y最大公约数是z,那么x/z,y/z一定是互质的 然后找到所有的素数,然后用欧拉函数求一 ...

  6. 函数求值一<找规律>

    函数求值 题意: 定义函数g(n)为n最大的奇数因子.求f(n)=g(1)+g(2)+g(3)+-+g(n).1<=n<=10^8; 思路: 首先明白暴力没法过.问题是如何求解,二分.知道 ...

  7. 函数求值(swust oj0274)

    函数求值(0274) Time limit(ms): 1000 Memory limit(kb): 65535 Submission: 1767 Accepted: 324 Accepted 14级卓 ...

  8. GMA Round 1 函数求值

    传送门 函数求值 设函数$f(x)=x^{2018}+a_{2017}*x^{2017}+a_{2016}*x^{2016}+...+a_{2}*x^2+a_{1}*x+a_{0}$,其中$a_{0} ...

  9. 编写函数求整形数组a中存储的m个不重复的整数的第k大的整数(其中m>=1,1<=k<=m)很简单的一个思路是酱紫的:管他辣么多干啥,上来一把排序然后直接得答案

    /** * @author:(LiberHome) * @date:Created in 2019/2/28 20:38 * @description: * @version:$ *//*编写函数求整 ...

随机推荐

  1. mysql 主从模式总结(一)

    1. 主从模式的部署步骤 目标:部署一个有3台主机的单主模式的MySQL分组. Primary:192.168.197.110. Secondary:192.168.197.111. Secondar ...

  2. 设计模式之策略模式(Strategy)

    策略模式将不同算法的逻辑抽象接口封装到一个类中,通过组合和多态结合的方式来进行不同算法具体的实现. 作用 策略模式是一种定义一系列算法的方法,Strategy类层次为Context定义了一系列的可重用 ...

  3. addEventListener.js

    document.addEventListener("click",function(){ console.log("添加事件监听") }) 举个例子 : 点击 ...

  4. Python 基于Python实现批量创建目录

    基于Python实现批量创建目录 by:授客QQ:1033553122 测试环境: Python版本:Python 2.7   代码实践 #!/usr/bin/env python # -*- cod ...

  5. Kotlin入门(3)基本变量类型的用法

    上一篇文章介绍了Kotlin在App开发中的简单用法,包括操纵控件对象.设置控件监听器,以及弹出Toast提示等等.也许大家已经迫不及待想要了解更深入的App开发,可是由于Kotlin是一门全新的语言 ...

  6. 项目开发常见字符串处理模型-strstr-while/dowhile模型

    strstr-whiledowhile模型用于在母字符串中查找符合特征的子字符串. c语言库提供了strstr函数,strstr函数用于判断母字符串中是否包含子字符串,包含的话返回子字符串的位置指针, ...

  7. unicode编码和utf8编码的区别

    编码格式不同在数据的传输和显示会有很大的影响.最近在使用的过程中发现一些网络文件 传输的编码格式问题,会影响文件的正常传输,于是查看了一下网上的资料,自己也写一篇 小总结. uicode是万国码,用1 ...

  8. 你不可不知的Java引用类型之——软引用

    定义 软引用是使用SoftReference创建的引用,强度弱于强引用,被其引用的对象在内存不足的时候会被回收,不会产生内存溢出. 说明 软引用,顾名思义就是比较"软"一点的引用. ...

  9. Java学习笔记:输入、输出数据

    相关内容: 输出数据: print println printf 输入数据: Scanner 首发时间:2018-03-16 16:30 输出数据: JAVA中在屏幕中打印数据可以使用: System ...

  10. linux下zip文件解压乱码的问题

    因为编码问题,zip文件中的中文文件在linux下解压会出现乱码 如果你使用archlinux那么使用AUR安装unzip-natspec就可以解决这个问题 https://aur.archlinux ...