前言

我们在分析两组变量之间的相关性时,比如X=[X1,X2,...,Xm]X=[X_1,X_2,...,X_m]和Y=[Y1,Y2,...,Yn]Y=[Y_1,Y_2,...,Y_n],最原始的方法就是直接计算X和Y的协方差矩阵,矩阵有m*n个值。有了协方差矩阵就得到了两两变量之间的相关性,比如cijc_ij就是变量XiX_i和YjY_j的相关性。

这种分析方法只考虑了cijc_ij变量XiX_i和YjY_j变量单个维度之间的相关性,没有考虑X和Y内部之间的相关性。另外协方差矩阵的形式也比较繁琐。

典型相关分析

采用类似主成分分析的思想,分别找出两组变量各自的线性组合,然后讨论线性组合之间的相关关心。

分别在两组变量中找出第一对线性组合,使他们具有最大相关性;接着再分别在两组变量中找出第二对线性组合,使他们具有第二大的相关性,并且它们分别于本组内的第一线性组合不相关。以此类推找出其他线性组合,如下面提取两对线性组合,其中 u1u2u_1 u_2互相独立,v1v2v_1 v_2互相独立,u1v1u_1 v_1相关。

⎧⎩⎨⎪⎪u1=a11x1+a12x2+...+a1mxmv1=b11y1+b12y2+...+b1nyn

\left\{\begin{matrix}u_1 = a_{11}x_1 + a_{12}x_2 + ...+ a_{1m}x_m& \\ \\v_1 = b_{11}y_1 + b_{12}y_2 +...+ b_{1n}y_n& \end{matrix}\right.

⎧⎩⎨⎪⎪u2=a21x1+a22x2+...+a2mxmv2=b21y1+b22y2+...+b2nyn

\left\{\begin{matrix}u_2 = a_{21}x_1 + a_{22}x_2 + ...+ a_{2m}x_m& \\ \\v_2 = b_{21}y_1 + b_{22}y_2 +...+ b_{2n}y_n& \end{matrix}\right.

假设提取了r次,则最后提取了r组变量,

U=(u1,...,ur)TV=(v1,...,vr)T

U = (u_1,...,u_r)^T \\ V = (v_1,...,v_r)^T

则实现通过线性组合来表示原变量,并且用他们之间的相关性来表示原变量的相关性。

本质是什么

典型相关分析的本质是从两组变量中选取若干个有代表性的变量线性组合,用这些线性组合的相关性来表示原来两组变量的相关性。

求解线性组合

以第一组线性组合为例,这里要求解的就是包含的系数。

⎧⎩⎨⎪⎪u1=a11x1+a12x2+...+a1mxmv1=b11y1+b12y2+...+b1nyn

\left\{\begin{matrix}u_1 = a_{11}x_1 + a_{12}x_2 + ...+ a_{1m}x_m& \\ \\v_1 = b_{11}y_1 + b_{12}y_2 +...+ b_{1n}y_n& \end{matrix}\right.

矩阵形式为,

⎧⎩⎨⎪⎪u1=aT1Xv1=bT1Y

\left\{\begin{matrix}u_1 = a_1^TX& \\ \\v_1 = b_1^TY& \end{matrix}\right.

只考虑方差为1时的线性函数,这时其实就存在一个约束条件,D(u1)=D(v1)=1D(u_1) = D(v_1) = 1,我们求常向量aT1a_1^T和bT1b_1^T,使得相关系数ρ(u1,v1)\rho(u_1,v_1)达到最大。

方差分别为,

D(u1)=D(aT1X)=aT1Cov(X,X)a1D(v1)=D(bT1Y)=bT1Cov(Y,Y)b1

D(u_1) = D(a_1^TX) = a_1^TCov(X,X)a_1\\ D(v_1) = D(b_1^TY) = b_1^TCov(Y,Y)b_1
则 u1v1u_1 v_1的协方差为,

Cov(u1,v1)=aT1Cov(X,Y)b1

Cov(u_1,v_1) = a_1^TCov(X,Y)b_1

另外我们还有,

Cov(X,X)=∑11Cov(Y,Y)=∑22Cov(X,Y)=∑12

Cov(X,X) = \sum_{11}\\ Cov(Y,Y) = \sum_{22}\\ Cov(X,Y) = \sum_{12}
两者的相关系数为,

Corr(u1,v1)=Cov(u1,v1)D(u1)−−−−−√D(v1)−−−−−√=aT1∑12b1aT1∑11a1−−−−−−−−√bT1∑22b1−−−−−−−−√

Corr(u_1,v_1) = \frac{Cov(u_1,v_1)}{\sqrt{D(u_1)} \sqrt{D(v_1)}} = \frac{a_1^T\sum_{12}b_1}{\sqrt{a_1^T\sum_{11}a_1} \sqrt{b_1^T\sum_{22}b_1}}

我们要做的是寻找a1b1a_1 b_1使相关系数最大,同时要考虑前面说到的约束条件D(u1)=D(v1)=1D(u_1) = D(v_1) = 1,它能防止结果重复出现,则相关系数变为,

Corr(u1,v1)=aT1∑12b1

Corr(u_1,v_1) =a_1^T\sum_{12}b_1

求条件极值一般可以引入拉格朗日乘数来求极大值,求解出aT1bT1a_1^T b_1^T。

对于其他组的线性组合也同样根据上述过程得到解。

线性组合数量

根据线性组合相关性大小不断提取线性组合,最大的为第一组,次大的为第二组,以此类推直到 r

怎么分析

比如第一组线性组合中,可以计算两组变量与u1和v1的相关系数,如果某若干个变量与u1相关系数较大,则u1代表该若干变量的总指标,可以自己根据变量取个额外的名称。而同样如果v1和其他若干变量的相关系数较大的话则v1可代表该若干变量。

接着如果u1和v1的相关系数较大的话则说明u1代表的若干变量与v1代表的若干变量是关系密切的。对于其他线性组合也一样,先找出u2和v2相关的若干变量,然后再看u2与v2之间的相关系数,判断其是否相关。

=============广告时间===============

公众号的菜单已分为“分布式”、“机器学习”、“深度学习”、“NLP”、“Java深度”、“Java并发核心”、“JDK源码”、“Tomcat内核”等,可能有一款适合你的胃口。

鄙人的新书《Tomcat内核设计剖析》已经在京东销售了,有需要的朋友可以购买。感谢各位朋友。

为什么写《Tomcat内核设计剖析》

=========================

欢迎关注:

典型相关分析如何分析两组变量的关系相关推荐

  1. matlab两组数据的相关度,怎么分析两组数据的相关性?比如A=【1 2 3 4 5 6 7 】 B=【2 3 4 5 6 7 8】 最好用MATLAB...

    怎么分析两组数据的相关性?比如A=[1 2 3 4 5 6 7 ] B=[2 3 4 5 6 7 8] 最好用MATLAB 关注:261  答案:2  手机版 解决时间 2021-01-12 04:4 ...

  2. excel两个指标相关性分析_如何用excel分析两组数据的相关性

    在Excel进行数据分析的时候,经常要分析两组数据的相关性.求出的值越接近1,那就说明相关性越大:越接近0,说明相关性越小.下面就说说具体步骤. 具体步骤如下所示: 1. 数据分析,以比较男女两组身高 ...

  3. 通过使用SPSS独立样本T检验,分析两组个案的差异(下)

    上一节,我们重点讲解了IBM SPSS Statistics独立样本T检验的检验原理.数据要求以及数据转换的方法.这部分的内容相当重要,建议先理解了上一节内容再学习本节的实例操作. 如图1所示,可以看 ...

  4. 通过SPSS独立样本T检验,分析两组个案的差异(上)

    独立样本T检验与平均值检验.单样本T检验.配对样本T检验均属于比较平均值的检验方法.不同的是,独立样本T检验比较的是两组个案的平均值.该检验需要符合随机分布的假定,也就是说,两组个案数据间的差异无其他 ...

  5. python 分析两组数据的差异_R语言limma包差异基因分析(两组或两组以上)

    使用limma包进行差异基因分析时,做最多的是两分类的,例如control组和disease组,但也会碰到按照序列进行的分组.这时,如果逐一使用两两比较求差异基因则略显复杂.其实开发limma包的大神 ...

  6. 数学建模Day6 典型相关分析

    典型相关分析xmind思维导图下载戳这里 个人理解   典型相关分析不同于相关系数,相关系数是分析两个单变量之间的相关关系,而典型相关分析可以分析两组变量之间的关系.比如一组变量A1.A2.A3,另一 ...

  7. 典型相关分析(cca)原理_CCA典型关联分析原理与Python案例

    文章来源于"脑机接口社区" CCA典型关联分析原理与Python案例​mp.weixin.qq.com Rose今天分享一下CCA的相关原理以及Python应用,CCA在EEG等脑 ...

  8. 典型相关分析 python_CCA典型关联分析原理与Python案例

    点击上面"脑机接口社区"关注我们 更多技术干货第一时间送达 Hello,大家好! Rose今天分享一下CCA的相关原理以及Python应用,CCA在EEG等脑电数据的特征提取中使用 ...

  9. 典型相关分析python实现_CCA典型关联分析原理与Python案例

    文章来源于"脑机接口社区"CCA典型关联分析原理与Python案例​mp.weixin.qq.com Rose今天分享一下CCA的相关原理以及Python应用,CCA在EEG等脑电 ...

最新文章

  1. 系统性能优化 1-1 Redis删除key和字符串拼接
  2. 远程办公指南 | 齐心守护健康,共倡远程协同
  3. 0227互联网新闻 | 腾讯与英特尔联合推出云游戏平台“腾讯即玩”;华为企业业务MWC现场发布数字平台...
  4. 天天象棋 残局闯关 第8关
  5. “程序”二字的五笔字根
  6. Java ObjectOutputStream reset()方法与示例
  7. python计算区间内偶数和_Python 计算当真因子个数为偶数个时为幸运数,计算区间内幸运数之和...
  8. (36)Gulp 构建资源(图片)文件
  9. java计算机毕业设计Vue.js网上书城管理系统设计与实现服务端源码+mysql数据库+系统+lw文档+部署
  10. 【LitJson】如何判断字符串中是否有某个key
  11. curl源码编译安装
  12. 安装ie11提示计算机安装了更新的版本,离线安装IE11浏览器提示quot;获取更新quot;解决方法 - 191路由网...
  13. comsol显示电场计算结果_comsol电磁场仿真案例
  14. Eclipse 项目有红感叹号
  15. tomcat服务器能在哪打开网页,安装Tomcat服务器后无法打开http://localhost:8080网页怎么办-电脑自学网...
  16. 手机号码清洗的优势是什么
  17. 雨听 | 英语学习笔记(十四)~作文范文:电子设备能促进教育吗?
  18. 面试系列 -- 常见面试问题回答思路
  19. JVM运行时内存结构学习
  20. 【语音录制+识别】一、音频相关

热门文章

  1. bmob php支付,个人开发者也能盈利!Bmob支付SDK使用实例
  2. vue3+ts 实现文件在线预览
  3. 【解决】fatal error: X11/XXXX.h: No such file or directory
  4. Cesium飞行效果
  5. 阿里云短信平台实现手机验证码登录
  6. 20189217 2018-2019-2 《密码与安全新技术专题》第1周作业
  7. 二叉树的深度(前序 中序 后序 递归非递归搜素)、广度、搜索 C++
  8. 图片转PDF格式怎么转换?这三种方法随便用
  9. 元宇宙来了,用好名字好概念赋能中国制造国际营销的初步构想
  10. EXCEL破冰 - 锁定单元格样式和输入格式