之前说的数据分析基本上是来自一元总体X,而在实际情况中,许多数据来自多元数据的总体,即来自总体(X1,X2,X3,...Xn)^T。对于来自多元总体的数据,除了分析各个分量的取值特点外,更重要的是分析各个分量之间的相关关系,这就是多元数据的相关分析。先从二元数据开始讲解。

设(X,Y)^T是二元总体,从总取得观测样本(X1,Y1)^T,(X2,Y2)^T,...,(Xn,Y,)^T,其样本观测矩阵为:

用r语言做数据分析符号(用R语言做数据分析)(1)

用r语言做数据分析符号(用R语言做数据分析)(2)

则称(X拔,Y拔)^T为二元观测样本的均值向量。

用r语言做数据分析符号(用R语言做数据分析)(3)

则称Sxx为变量X的观测样本的方差,称Syy为变量Y的观测样本的方差,称Sxy为变量X、Y的观测样本的协方差,称

用r语言做数据分析符号(用R语言做数据分析)(4)

为观测样本的相关系数。

例子:某种矿石有两种有用成分A、B,取10个样本,每个样本中成分A的含量百分数x(%)及B的含量百分数y(%)的数据如下所示,计算样本的均值、方差、协方差和相关系数。

用r语言做数据分析符号(用R语言做数据分析)(5)

> x<-c(67,54,72,64,39,22,58,43,46,34)

> y<-c(24,15,23,19,16,11,20,16,17,13)

> ore<-data.frame(x,y)

>ore.m<-apply(ore,2,mean)

> ore.s<-cov(ore)

> ore.r<-cor(ore)

>ore.m

x y

49.9 17.4

> ore.s

x y

x 252.7667 60.60000

y 60.6000 17.15556

> ore.r

x y

x 1.0000000 0.9202595

y 0.9202595 1.0000000

上述计算中,cov()函数用于计算协方差或协方差矩阵,cor()函数用于计算相关系数或相关矩阵,它们的使用格式为:

用r语言做数据分析符号(用R语言做数据分析)(6)

其中x是数值型向量、矩阵或数据框,y是控制(NULL、缺省值)、向量、矩阵或数据框,但需要与x的维数一致。与cov和cor相关的函数还有:cov.wt()用于计算加权协方差,cor.test()用于计算相关性检验。

,