Spearmen相关系数和Pearson相关系数及其MATLAB实现_第1页
Spearmen相关系数和Pearson相关系数及其MATLAB实现_第2页
Spearmen相关系数和Pearson相关系数及其MATLAB实现_第3页
Spearmen相关系数和Pearson相关系数及其MATLAB实现_第4页
Spearmen相关系数和Pearson相关系数及其MATLAB实现_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、Spearmen 相关系数和 Pearson相关系数及其MATLA联现Spearmen相关系数和Pearson相关系数及其MATLABSpearmen相关系数,Spearman秩相关系数是一种无参数与分布无关检验方法,用于度量变量之间联系的强弱.在没有重复数据的情况下,如果一个变量是另外一个变量的严格单调函数,那么Spearman秩相关系数就是+1或-1 ,称变量完全Spearman秩相关.表达式如下:n6 d:rs 1 41n n式中,n为样方数,对原始数据Xi, yi按从大到小排序,记xi,y;为原始Xi, y在排序后列表中的位置,X;, y'称为x; , yi的秩次,秩次差di

2、x'-y;.使用Pearson线性相关系数有2个局限:1必须假设数据是成对地从正态分布中取得的.2数据至少在逻辑范围内是等距的.位置n原始X排序后秩次原始丫排序后秩次秩次差11254651786125464517846103133242455144513246620532123624162264513-3对于上表数据,算出Spearman秩相关系数为:r=1-6*1+1+1+9/6*35=0.6571图1秩相关系数检验的临界值表上图为秩相关系数检验的临界值表.对相关系数r (-1<r<1 ):A.当|r|越接近1那么表示样本之间的相关程度越高;B.当|r|越接近0那么表示样

3、本之间的相关程度越低.由于n=6,假设|r|>0.829 ,那么样本之间存在相关性,反之那么不存在显著相关性,假设|r|>0.943 ,那么样本之间存在极显著相关性.程序:%下 程 序存为 mySpearman.m 文件%function coeff = mySpearman(X , Y)if length(X) = length(Y)error('两个数值数列的维数不相等,);return;endN = length(X); % 得到序列的长度Xrank = zeros(1 , N); % 存储X中各元素的排行Yrank = zeros(1 , N); % 存储Y中各元素

4、的排行%计算Xrank中的各个值for i = 1 : Ncontl = 1; %记录大于特定元素的元素 个数cont2 = -1; %记录与特定元素相同的 元素个数for j = 1 : Nif X(i) < X(j)cont1 = cont1 + 1;elseif X(i) = X(j)cont2 = cont2 + 1;endendXrank(i) = cont1 + mean(0 : cont2); end%计算Yrank中的各个值for i = 1 : Ncont1 = 1; % 记录大于特定元素的元素个数cont2 = -1; %记录与特定元素相同的 元素个数for j =

5、1 : Nif Y(i) < Y(j)contl = contl + 1;elseif Y(i) = Y(j)cont2 = cont2 + 1;endendYrank(i) = cont1 + mean(0 : cont2);end%利用差分等级(或排行)序列计算斯皮尔曼 等级相关系数coeff = 1 - (6 * sum(Xrank - Yrank).八2) /(N * (NA2 - 1);end%函数mySpearman结束%»%这个程序 %X=12,546,13,45,32,2;Y=1,78,2,46,6,45;S=mySpearman(X,Y);%艮据以上程序可以算

6、出Spearman秩相关系数为0.6571% %matlab 自带程序 coeff = corr(X , Y ,'type" , 'Spearman');Pearson 相关系数(Pearson correlation coefficient )也叫皮尔森积差相关系数(Pearson product-moment correlation coefficient ), 是用来反应两个变量相似程度的统计量.或者说可以用来计算两个向量的相似度(在基于向量空间模型的文本分类、用户喜好推荐系统中都有应用).当两个变量的标准差都不为零时,相关系数才有定义,皮尔逊相关系数适

7、用于:(1)、两个变量之间是线性关系,都是连续数据.(2)、两个变量的总体是正态分布,或接近正态的单峰分布.(3)、两个变量的观测值是成对的,每对观测值之间相互独立.用以下公式为例子编写 matlab程序:rX,YX21Xi -N(NXi 1- NNYi ii 1Xi)2;i 1 i 1%将以下程序存为 myPearson.m件%function coeff = myPearson(X , Y)%本函数实现了皮尔逊相关系数的计算操作if length(X) = length(Y)error('两个数值数列的维数不相等,);return;endN=length(X); |fl = sum(X .* Y) - (sum(X) * sum(Y)/N;f2 = sqrt(sum(X .A2) - sum(X)A2/N) * (sum(Y .A2) - sum(Y)A2 /N);coeff = fl / 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秩相关系数检验的临界值表

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论