MATLAB cov()和corrcoef()函数的用法(附带实例)
MATLAB 中计算协方差的函数为 cov(),其调用格式及说明如下表所示:
MATLAB 中计算相关系数的函数为 corrcoef(),其调用格式及说明如下表所示:
【实例】求解如下矩阵的协方差和相关系数。
在 MATLAB 命令行窗口输入以下命令:
调用格式 | 说明 |
---|---|
C = cov(A) | A 为向量时,计算其方差;A 为矩阵时,计算其协方差矩阵,其中协方差矩阵的对角元素是 A 矩阵的列向量的方差,按观测值数量 -1 实现归一化 |
C = cov(A,B) | 返回两个随机变量 A 和 B 之间的协方差 |
C = cov(...,w) | 为之前的任何语法指定归一化权重。如果 w = 0(默认值),则 C 按观测值数量 -1 实现归一化;w = 1 时,按观测值数量对它实现归一化 |
C = cov(...,nanflag) | 指定一个条件,用于在之前的任何语法的计算中忽略 NaN 值 |
MATLAB 中计算相关系数的函数为 corrcoef(),其调用格式及说明如下表所示:
调用格式 | 说明 |
---|---|
R = corrcoef(A) | 返回 A 的相关系数的矩阵,其中 A 的列表示随机变量,行表示观测值 |
R = corrcoef(A,B) | 返回两个随机变量 A 和 B 之间的相关系数矩阵 R |
[R,P] = corrcoef(…) | 返回相关系数的矩阵和 p 值矩阵,用于测试观测到的现象之间没有关系的假设 |
[R,P,RLO,RUP] = corrcoef(…) | RLO、RUP 分别是相关系数 95% 置信度的估计区间上、下限。如果 R 包含复数元素,此语法无效 |
corrcoef(...,Name,Value) | 在上述语法的基础上,通过一个或多个名称-值对组参数指定其他选项 |
【实例】求解如下矩阵的协方差和相关系数。

在 MATLAB 命令行窗口输入以下命令:
>> close all % 关闭当前已打开的文件 >> clear % 清除工作区的变量 >> A = [-1 1 2 ; -2 3 1 ; 4 0 3]; % 输入矩阵A >> cov(A) % 计算A的协方差 ans = 10.3333 -4.1667 3.0000 -4.1667 2.3333 -1.5000 3.0000 -1.5000 1.0000 >> corrcoef(A) % 计算A的相关系数 ans = 1.0000 -0.8486 0.9333 -0.8486 1.0000 -0.9820 0.9333 -0.9820 1.0000