前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >R语言典型相关分析(Canonical Correlation analysis, CCA)的一些参考资料

R语言典型相关分析(Canonical Correlation analysis, CCA)的一些参考资料

作者头像
用户7010445
发布2021-03-15 09:56:15
3.7K0
发布2021-03-15 09:56:15
举报
文章被收录于专栏:小明的数据分析笔记本

典型相关分析(Canonical Correlation analysis, CCA)是研究两组变量之间相关关系的一种统计方法。如果每组变量中只包含一个变量,相关关系可以用相关系数来度量。但是每组变量中变量个数大于1时,比如A组温度和湿度两个变量,B组树高胸径两个变量,度量这两组变量之间的相关关系,可以利用主成分的思想,把两组变量的相关关系分别转化成两个综合变量的最大可能的相关关系,就是典型相关分析(CCA)。——摘自《应用统计分析与R语言实战》

  • 文字描述稍显啰嗦,直接看图

以上图片出自教程http://my.ilstu.edu/~wjschne/444/CanonicalCorrelation.html#(4)

例子和R语言实现

第一个小实例:《应用统计分析与R语言实战》第八章第6小节例题
  • 目的:研究儿童形态与肺通气功能的关系数据

健康儿童形态

肺通气功能

身高 x1 (cm)

肺活量 y1 (L)

体重 x2 (kg)

静息通气 y2 (L)

胸围 x3 (cm)

每分钟最大通气量 y3 (L)

  • 代码
代码语言:javascript
复制
df<-read.table("clipboard",header=T)
df
ndat<-scale(df)
A<-ndat[,1:3]
B<-ndat[,4:6]
res.ca<-cancor(A,B,xcenter=FALSE,ycenter = FALSE)
res.ca

第二个小实例

  • 原文地址 https://stats.idre.ucla.edu/r/dae/canonical-correlation-analysis/
  • 数据集 600个大学新生(college freshman),四个学术变量(academic variables): Read; Write; math; Science。性别。3个心理变量(psychological variables): locus_of_Control;self_ Concept; Motivation。(这三个变量具体是什么含义我不太明白,有时间可以多看看心理学方面的书)

研究人员感兴趣的是(Researchers are intersted in)心理变量和学术变量还有性别之间的关系是怎样的?特别的(In particular)。研究人员感兴趣的是需要多少维度(how many dimensions (canonical variables))来理解两组变量之间的关系

  • 安装需要用到的包并加载
代码语言:javascript
复制
install.packages("GGally")
install.packages("CCA")
library(ggplot2)
library(GGally)
library(CCA)
  • 读入数据
代码语言:javascript
复制
mm<-read.csv("https://stats.idre.ucla.edu/stat/data/mmreg.csv")
head(mm)
colnames(mm)<-c("Control","Concept","Motivation","Read","Write","Math","Science","Gender")
summary(mm)
xtabs(~Gender,data=mm)
#输出结果
Gender
  0   1 
273 327 
#
psych<-mm[,1:3]
acad<-mm[,4:8]
  • 查看两组变量内和组间的相关性,使用到的是CCA包中的matcor函数(we will look at the correlations within and between the two sets of variables using the matcor function from the CCA package.)
代码语言:javascript
复制
library(CCA)
matcor(psych,acad)
#输出结果
$Xcor
             Control   Concept Motivation
Control    1.0000000 0.1711878  0.2451323
Concept    0.1711878 1.0000000  0.2885707
Motivation 0.2451323 0.2885707  1.0000000

$Ycor
               Read     Write       Math    Science      Gender
Read     1.00000000 0.6285909  0.6792757  0.6906929 -0.04174278
Write    0.62859089 1.0000000  0.6326664  0.5691498  0.24433183
Math     0.67927568 0.6326664  1.0000000  0.6495261 -0.04821830
Science  0.69069291 0.5691498  0.6495261  1.0000000 -0.13818587
Gender  -0.04174278 0.2443318 -0.0482183 -0.1381859  1.00000000

$XYcor
             Control     Concept Motivation        Read      Write
Control    1.0000000  0.17118778 0.24513227  0.37356505 0.35887684
Concept    0.1711878  1.00000000 0.28857075  0.06065584 0.01944856
Motivation 0.2451323  0.28857075 1.00000000  0.21060992 0.25424818
Read       0.3735650  0.06065584 0.21060992  1.00000000 0.62859089
Write      0.3588768  0.01944856 0.25424818  0.62859089 1.00000000
Math       0.3372690  0.05359770 0.19501347  0.67927568 0.63266640
Science    0.3246269  0.06982633 0.11566948  0.69069291 0.56914983
Gender     0.1134108 -0.12595132 0.09810277 -0.04174278 0.24433183
                 Math     Science      Gender
Control     0.3372690  0.32462694  0.11341075
Concept     0.0535977  0.06982633 -0.12595132
Motivation  0.1950135  0.11566948  0.09810277
Read        0.6792757  0.69069291 -0.04174278
Write       0.6326664  0.56914983  0.24433183
Math        1.0000000  0.64952612 -0.04821830
Science     0.6495261  1.00000000 -0.13818587
Gender     -0.0482183 -0.13818587  1.00000000

小实例二

http://my.ilstu.edu/~wjschne/444/CanonicalCorrelation.html#(1)

小实例三

http://ecology.msu.montana.edu/labdsv/R/labs/lab12/lab12.html#cats

小实例四

http://www.sthda.com/english/articles/31-principal-component-methods-in-r-practical-guide/113-ca-correspondence-analysis-in-r-essentials/

小实例五

http://userweb.eng.gla.ac.uk/umer.ijaz/bioinformatics/ecological.html 好长的R代码,必须要重复这篇

参考文献

  • https://blog.csdn.net/u012409883/article/details/17091861
  • https://wenku.baidu.com/view/dda604ec844769eae109ed53.html
  • 赖江山, 米湘成. 基于Vegan软件包的生态学数据排序分析[C].全国生物多样性保护与持续利用研讨会. 2010.
  • https://mp.weixin.qq.com/s/8D4vlBIhyYg0ZHtsdGn_kA 《环境因子关联分析——我应该选择CCA还是RDA分析?》
  • http://blog.sciencenet.cn/blog-3334560-1104737.html 用ggvegan包进行db-RDA微生物环境因子分析
  • https://github.com/vqv/ggbiplot/blob/master/README.md ggbioplot 主成分分析结果画图
  • https://stackoverflow.com/questions/32194193/plotting-rda-vegan-in-ggplot Plotting RDA (vegan) in ggplot
  • https://github.com/gavinsimpson/ggvegan ggvegan
  • https://github.com/joey711/phyloseq/issues/274 Plotting environmental vectorsn CCA
  • http://huboqiang.cn/2016/03/03/RscatterPlotPCA R plot PCA in ggplot
  • https://stackoverflow.com/questions/30549459/r-visualize-cca-plot-in-ggplot-wrong-arrows-length R visualize cca plot in ggplot - Wrong arrowslength

欢迎大家关注我的公众号

小明的数据分析笔记本

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-02-13,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 小明的数据分析笔记本 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 例子和R语言实现
    • 第二个小实例
      • 小实例二
        • 小实例三
          • 小实例四
            • 小实例五
            • 参考文献
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档