在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. Spark中master与worker的进程RPC通信实现

    1.构建master的actor package SparkRPC import akka.actor.{Actor, ActorSystem, Props}import com.typesafe.c ...

  2. 近乎产品MVC架构介绍-多租户模式

    应用的数据部分支持多租户,租户可以是呈现区域(PersentArea)也可以是另一个应用.在数据库设计方面采用最简单的方式,在应用数据表中增加TenantTypeId(存储对应的Application ...

  3. Web前端基础——jQuery(二)

    一.jQuery 中的常用函数 1) $.map(Array,fn); 对数组中的每个元素,都用fn进行处理,fn将处理后的结果返回,最后得到一个数组 //因为这些操作,没有与dom元素相关的,所以可 ...

  4. 性能监控(1)--linux下的top命令

    Linux下的监控工具 top命令 top命令能够实时显示系统中各个进程的资源占用情况,其输出信息分为两部分,前半部分为系统统计信息,后半部分是进程信息. 第一行是任务队列信息,它的结果等同于upti ...

  5. Strange Way to Express Integers(中国剩余定理+不互质)

    Strange Way to Express Integers Time Limit:1000MS Memory Limit:131072KB 64bit IO Format:%I64d & ...

  6. 前端周报:前端面试题及答案总结;JavaScript参数传递的深入理解

    1.2017前端面试题及答案总结 |掘金技术征文 "金三银四,金九银十",用来形容求职最好的几个月.但是随着行业的饱和,初中级前端er就业形势不容乐观. 行业状态不可控,我们能做的 ...

  7. 【代码笔记】Web-HTML-头部

    代码: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <!--ti ...

  8. 【代码笔记】Web-ionic-表单和输入框

    一,效果图. 二,代码. <!DOCTYPE html> <html> <head> <meta charset="utf-8"> ...

  9. CentOS7.4 系统下 Tomcat 启动慢解决方法

    CentOS7.4 系统下 Tomcat 启动慢解决的方法   首先查看日志信息,查看因为什么而启动慢 在CentOS7启动Tomcat时,启动过程很慢,需要几分钟,经过查看日志,发现耗时在这里:是s ...

  10. oracle存储函数实例

    CREATE OR REPLACE PROCEDURE "PROC_INS_DAY_DOCTOR_LL"(v_date in VARCHAR) is --PROC_INS_DAY_ ...