登录后查看更多精彩内容~
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
本帖最后由 立方光年的团子 于 2021-5-20 11:01 编辑
近期用到了,来赚个贡献。。斯皮尔曼等级相关是根据等级资料研究两个变量间相关关系的方法。它是依据两列成对等级的各对等级数之差来进行计算的,所以又称为“等级差数法”。 斯皮尔曼等级相关对数据条件的要求没有积差相关系数严格,只要两个变量的观测值是成对的等级评定资料,或者是由连续变量观测资料转化得到的等级资料,不论两个变量的总体分布形态、样本容量的大小如何,都可以用斯皮尔曼等级相关来进行研究。 斯皮尔曼等级相关系数
斯皮尔曼等级相关系数是反映两组变量之间联系的密切程度,它和相关系数r一样,取值在-1到+1之间,所不同的是它是建立在等级的基础上计算的
简单理解就是 对X序列和Y序列排序的序号做相关分析
公式呢,请参考https://blog.csdn.net/j904538808/article/details/78427329
或者维基https://en.wikipedia.org/wiki/Spearman%27s_rank_correlation_coefficient
附件是写好的求斯皮尔曼相关系数及其t检验的fortran函数
使用方法:
- include “spearman_correlation.f90”
- program ex01
- use spearman_correlation
- implicit none
- real :: x1(N),x2(N),spc,ttest
- xxx
- call spccor(x1,x2,spc,ttest)
- stop
- end
其中,x1,x2是两个要求相关的序列,spc 是相关系数,ttest是t检验求出来的t值,满足(N-2)自由度的t分布
(顺便问发帖可以插入代码吗,没找着在哪儿)
2018-8-29谢谢清风,插入代码教程:
开始处:[ c o d e = f o r t r a n ] 以及 结束后 [ / c o d e ]
原来的程序会改变输入序列的顺序,因此作出了修改,已更新
|