方差协方差矩阵,多组变量组成的以方差和协方差数值得到的矩阵。要获得方差-协方差矩阵,需要先知道什么是方差。
方差:是衡量随机变量或一组数据时离散程度的度量,即(样本中的每个值减去均值)平方和/自由度。

例如,有一组数据,用R手动计算其方差。
a <- c(2, 2, 1, 5, 4, 1, 2, 5, 2, 2)
sum((a-mean(a))^2)/(length(a)-1) #手动计算方差var(a) #函数计算方差

可以对比一下,函数计算的方差与手动计算的方差是否一致。
协方差:是用于衡量两个随机变量的联合变化程度。而方差是协方差的一种特殊情况,即变量与自身的协方差。

如果我们又有一组数据,用R计算一下协方差。
b <- c(2, 2, 1, 4, 4, 3, 5, 1, 3, 5)
sum((a-mean(a))*(b-mean(b)))/(length(a)-1)
var(a,b)

可自行查看结果是否一致。
方差-协方差矩阵,是用不同数据得到的协方差矩阵。
如果要得到a,b的方差-协方差矩阵,直接使用var()就可以。
matrixNoHeader <- cbind(a,b)
var(matrixNoHeader)

协方差矩阵行列数量相等,等于变量的个数。
如果是多个数据
a <- c(2, 2, 1, 5, 4, 1, 2, 5, 2, 2)
b <- c(2, 2, 1, 4, 4, 3, 5, 1, 3, 5)
c <- c(1, 5, 5, 5, 3, 3, 2, 1, 4, 2)
d <- c(4, 2, 5, 1, 5, 5, 4, 3, 5, 1)matrixNoHeader <- cbind(a,b,c,d)
var(matrixNoHeader)

对角线是每个变量自身的方差,其余部分是协方差。方差协方差矩阵就是这么简单。