首页 > 编程知识 正文

matlab求相关系数矩阵,matlab怎么求相关系数

时间:2023-05-04 13:13:11 阅读:107500 作者:3472

《Spearmen相关系数和Pearson相关系数及其MATLAB实现》由会员共享,可在线阅读。 更多相关《Spearmen相关系数和Pearson相关系数及其MATLAB实现(5页珍藏版)》请在人人文库网上搜索。

1、Spearmen相关系数、Pearson相关系数及其MATLAB实现Spearmen相关系数,Spearman秩相关系数是一种无参数(与分布无关)的检验方法,用于衡量变量之间相关的强弱。 如果没有重叠数据,则如果一个变量是另一个变量的严格单调函数,则Spearman秩相关系数为1或-1,变量完全称为Spearman秩相关。 式中,n为样本数,对原始数据按从大到小的顺序排序、记住,作为原始数据,排序后列表中的位置,称为、的顺序、位次差。 使用Pearson线性相关系数有两个限制:1)必须假定数据是从正态分布成对获得的。 2 )数据至少在逻辑范围内是等间隔的。 位置n原始x排序后排名次原始y排序。

2、后等级的位次差1125465178612546451784610313846103133245132462053212362416264513-3对于上表的数据,计算出Spearman的等级相关系数,则r 对于相关系数r(-10.829 ),样本之间存在显著相关,反之无显著相关,如果|r|0.943,则样本之间存在极显著相关。 程序:将%以下的程序另存为mySpearman.m文件%functioncoeff=mySpearman(x,y ) iflength ) x )=lengt。

3、h(y ) error )两个数值列维数不相等); 返回; endn=length(x; %得到的数组长度xrank=Zeros(1,n ); %存储x中每个元素的排名yrank=Zeros(1,n ); %存储y中各元素的排序%计算Xrank中的各值for i=1 : N cont1=1; %记录大于特定元素的元素个数cont2=-1; %与特定元素相同元素的个数forj=1:nifx(I ) x ) j ) cont1=cont1 1; ELSEifx(I )=x ) j ) cont2=cont2 1; 结束。

4、endxrank(I )=conT1mean ) 0:cont2; end %计算Yrank的各值for i=1 : N cont1=1; %记录大于特定元素的元素个数cont2=-1; %与特定元素相同的元素的个数forj=1:nify(I ) y ) j ) cont1=cont1 1; elseify(I )=y ) j ) cont2=cont2 1; endendyrank(I )=conT1mean ) 0:cont2; 使用差分等级(或排名)序列计算cqdkl等级相关系数coeff=1-(6)。

5、*sum(xrank-yrank ).2 )/) n* ) N2-1 ); end%函数mySpearman结束%运行以下程序: % x=12,546,13,45,32,2; y=1、78、2、46、6、45; s=mySpearman(x,y ); 根据%以上程序,可以计算出Spearman秩相关系数为0.6571%matlab自适应程序coeff=corr(x,y,type,Spearman ); Pearson相关系数也称为皮尔森乘积相关系数(Pearson product-momentcorrelationcoefficient ),是。

6、用于反应两个变量相似度的统计量。 或者,可以用于计算两个向量的相似性(也应用于基于向量空间模型的文本分类、用户偏好推荐系统)。 仅当两个变量的标准偏差均不为零时,才会定义相关系数。 皮尔森相关系数适用于(1)、两个变量之间为线性关系且为连续数据的情况。 )2)、两个变量的总体为正态分布,或接近正态的单峰分布。 (3)、2个变量的观测值成对,各自的观测值相互独立。 %将以下程序另存为myPearson.m文件%functioncoeff=mypearson(x,y ) %此函数用于计算皮尔森相关系数

7、等; 返回; endn=length(x; f1=sum(x.*y )-) sum ) x ) sum ) y )/N; F2=sqrt(sum(x.2(-sum ) x )2/N ) ) sum ) y.2 )-sum ) y )2/N ); coeff=f1/f2; end %函数myPearson结束% x=12,546,13,45,32,2; y=1、78、2、46、6、45; %X Y自己定义p=myPearson(x,y ); %matlab拥有程序coeff=corr(x,y )。 图1等级相关系数检查的阈值表图是等级相关系数检查的阈值表。 对相关系数p(-1p1 ) a .当|p|越接近1,表示样本间相关度越高; b.|p|越接近0,表示样本之间的相关越低。 得到Pearson相关系数p并与0.829进行比较。 和前面的方法相似。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。