用皮尔逊积描述变量的相关关系

摘要:记录了用皮尔逊积描述变量的相关关系的理论依据、计算方式以及在Java环境的代码示例,同时也说明了约束条件、缺点。

相关系数(Correlation coefficient)

  • 相关表和相关图可反映两个变量之间的相互关系及其相关方向,但无法确切地表明两个变量之间相关的程度。

  • 著名统计学家卡尔·皮尔逊设计了统计指标——相关系数。相关系数是用以反映变量之间相关关系密切程度的统计指标。相关系数是按积差方法计算,同样以两变量与各自平均值的离差为基础,通过两个离差相乘来反映两变量之间相关程度;着重研究线性的单相关系数。

  • 依据相关现象之间的不同特征,其统计指标的名称有所不同。如将反映两变量间线性相关关系的统计指标称为相关系数(相关系数的平方称为判定系数);将反映两变量间曲线相关关系的统计指标称为非线性相关系数、非线性判定系数;将反映多元线性相关关系的统计指标称为复相关系数、复判定系数等。

相关系数的计算方法

用皮尔逊积描述变量的相关关系_第1张图片
相关系数的计算方法
  • 相关系数的值介于–1与+1之间,即–1≤r≤+1。其性质如下:
    • 当r>0时,表示两变量正相关,r<0时,两变量为负相关。
    • 当|r|=1时,表示两变量为完全线性相关,即为函数关系。
    • 当r=0时,表示两变量间无线性相关关系。
    • 当0<|r|<1时,表示两变量存在一定程度的线性相关。且|r|越接近1,两变量间线性关系越密切;|r|越接近于0,表示两变量的线性相关越弱。
  • 相关系数一般可按三级划分:|r|<0.4为低度线性相关;0.4≤|r|<0.7为显著性相关;0.7≤|r|<1为高度线性相关。

使用案例

广告费与月平均销售额相关表,单位:万元

年广告费投入 月均销售额
12.5 21.2
15.3 23.9
23.2 32.9
26.4 34.1
33.5 42.5
34.4 43.2
39.4 49.0
45.2 52.8
55.4 59.4
60.9 63.5
用皮尔逊积描述变量的相关关系_第2张图片
计算过程

相关系数为0.9942,说明广告投入费与月平均销售额之间有高度的线性正相关关系。

代码示例

public class Pearson {
    /**
     * 计算两组数据的皮尔逊积相关性
     * @param firstRow 第一组数据
     * @param secondRow 第二组数据
     * @return
     */
    public static double GetPearson(List firstRow, List secondRow) {
        // 两组数据平均值
        double averageFirst = 0.0;
        double averageSecond = 0.0;
        // 分子
        double sumNumerator = 0.0;
        // 分母
        double sumDenominator = 0.0;
        // 若两列数据长度不同,仅取较短长度进行计算
        int compareLenth = firstRow.size() > secondRow.size() ? secondRow.size() : firstRow.size();

        for (int tempValue = 0; tempValue < compareLenth; tempValue++) {
            averageFirst += Double.valueOf(firstRow.get(tempValue));
            averageSecond += Double.valueOf(secondRow.get(tempValue));
        }
        //计算平均值
        averageFirst = averageFirst / compareLenth;
        averageSecond = averageSecond / compareLenth;
        // 分子
        for (int tempValue = 0; tempValue < compareLenth; tempValue++) {
            sumNumerator += (Double.valueOf(firstRow.get(tempValue)) - averageFirst) * (Double.valueOf(secondRow.get(tempValue)) - averageSecond);
        }
        // 分母
        double tempA = 0;
        double tempB = 0;
        for (int tempValue = 0; tempValue < compareLenth; tempValue++) {
            tempA += Math.pow((Double.valueOf(firstRow.get(tempValue)) - averageFirst), 2);
            tempB += Math.pow((Double.valueOf(secondRow.get(tempValue)) - averageSecond), 2);
        }
        sumDenominator = Math.sqrt(tempA) * Math.sqrt(tempB);
        return sumNumerator / sumDenominator;
    }
}

皮尔逊相关系数的约束条件

  • 两个变量间有线性关系
  • 变量是连续变量
  • 变量均符合正态分布,且二元分布也符合正态分布
  • 两变量独立。在实践统计中一般只输出两个系数,一个是相关系数也就是计算出来的相关系数大小(在-1到1之间),另一个是独立样本检验系数,用来检验样本一致性。

相关系数的缺点

  • 需要指出的是,相关系数有一个明显的缺点,即它接近于1的程度与数据组数n相关,这容易给人一种假象。因为,当n较小时,相关系数的波动较大,对有些样本相关系数的绝对值易接近于1;当n较大时,相关系数的绝对值容易偏小。特别是当n=2时,相关系数的绝对值总为1。因此在样本容量n较小时,我们仅凭相关系数较大就判定变量x与y之间有密切的线性关系是不妥当的。

  • 例如,就我国深沪两股市资产负债率与每股收益之间的相关关系做研究。发现1999年资产负债率前40名的上市公司,二者的相关系数为r=–0.6139;资产负债率后20名的上市公司,二者的相关系数r=0.1072;而对于沪、深全部上市公司(基金除外)结果却是,r沪=–0.5509,r深=–0.4361,根据三级划分方法,两变量为显著性相关。这也说明仅凭r的计算值大小判断相关程度有一定的缺陷。

参考文献

  • 郭红霞.相关系数及其应用.武警工程学院学报.2010年3月,第26卷第2期
  • 王爱莲.统计学.第七章 相关与回归分析.第一节 相关分析.西安石油大学.经济管理学院
  • 使用案例参考了MBA智库网

你可能感兴趣的:(用皮尔逊积描述变量的相关关系)