计算斯皮尔曼的等级相关系数(Spearman’s rank correlation coefficient)步骤

代码连接:code ( Matlab )

Spearman相关系数是在Pearson相关系数的基础上,利用两个集合中元素在各自集合的等级(排名)来计算他们之间的相关性,可以用于对数据进行分析。

假设两个长度为N的向量X和Y,即X和Y中包含N个元素,计算两个向量X和Y的相关性,可以根据以下步骤计算:

step1:将两个列向量X和Y对应的元素  X_i  和  Y_i  转换为在各自列向量中的排名,记为 R\left ( X_i \right ) 和 R\left ( Y_i \right )

step2:   根据下面公式,计算两个列向量X和Y中对应元素的R\left ( X_i \right ) 和 R\left ( Y_i \right )之间的差异d,并相加

             d = \sum_{i=1}^{N} \left | R\left ( X_i\right )-R\left ( Y_i \right ) \right |^{2}

step3:最后,根据下面公式计算出两个列向量之间的相关性Rs

            Rs = 1-\frac{6 \times d}{N\times\left (N^2 -1 \right )}

Ps: 代码是以几个单目标优化问题为例子,通过随机产生点来计算两个单目标优化问题之间的相关性。

             

你可能感兴趣的:(数据分析)