• R语言中计算协方差、相关系数。


    001、

    1.协方差

    方差是描述自身偏离其均值的程度。

    协方差用来描述两个变量间的变化关系,协方差用来度量两个随机变量关系的统计量:

    <span class="mrow"><span class="mi"><img src="https://img2022.cnblogs.com/blog/1447599/202207/1447599-20220731123105542-380290930.png" alt="" loading="lazy" /> <span class="mrow"><span class="mi">

    E[x] 代表期望,一般置X的均值

    公式:如果有X,Y两个变量,每个时刻的“X值与其均值之差”乘以“Y值与其均值之差”得到一个乘积,再对这每时刻的乘积求和并求出均值

    总结一下,如果协方差为正,说明X,Y同向变化,协方差越大说明同向程度越高;如果协方差为负,说明X,Y反向运动,协方差越小说明反向程度越高

    dat1 <- c(2, 4, 6, 4)
    dat2 <- c(8, 10, 6, 12)
    cov(dat1, dat2)
    
    mean1 <- mean(dat1)
    mean2 <- mean(dat2)
    
    mean2
    
    sum <- 0
    for (i in 1:4) {
      sum = sum + (dat1[i] - mean1) * (dat2[i] - mean2)
    }
    sum
    sum/(4 - 1)

    2、相关系数

    协方差除以标准差的乘积。

    就是用X、Y的协方差除以X的标准差和Y的标准差。

    所以,相关系数也可以看成协方差:一种剔除了两个变量量纲影响、标准化后的特殊协方差

    既然是一种特殊的协方差,那它:

    1、也可以反映两个变量变化时是同向还是反向,如果同向变化就为正,反向变化就为负。

    2、由于它是标准化后的协方差,因此更重要的特性来了:它消除了两个变量变化幅度的影响,而只是单纯反应两个变量每单位变化时的相似程度

    dat1 <- c(2, 4, 6, 4)
    dat2 <- c(8, 10, 6, 12)
    cov(dat1, dat2)
    
    mean1 <- mean(dat1)
    mean2 <- mean(dat2)
    
    mean2
    sum <- 0
    for (i in 1:4) {
      sum = sum + (dat1[i] - mean1) * (dat2[i] - mean2)
    }
    sum
    sum/(4 - 1)                          ## 协方差,方向两个变量同向或反向变化。
    
    sum/(4 - 1)/(sd(dat1)*sd(dat2))      ## 相关系数 = 协方差除以标准差的乘积。
    cor(dat1, dat2)

     

    参考:https://www.zhihu.com/question/20852004

  • 相关阅读:
    vue的自定义组件和组件传值
    VUE的语法笔记
    Vue 的语法
    about use Vue of methods
    移动端使用下拉加载的简单方法
    深入理解nodejs的next函数。koa的使用 app.params的使用
    ACM输入输出超级外挂(朋友你渴望力量吗)fread版本
    Codeforces 1028C(面积并/思维)
    HDU 2457(AC自动机+dp)
    HDU 2825(AC自动机+状压dp)
  • 原文地址:https://www.cnblogs.com/liujiaxin2018/p/16536869.html
Copyright © 2020-2023  润新知