帮助中心帮助中心
NaN
本页翻译不是最新的。点击此处可查看最新英文版本。
协方差
C = cov(A)
C = cov(A,B)
C = cov(___,w)
C = cov(___,nanflag)
示例
C = cov(A) 返回协方差。
C
A
如果 A 是由观测值组成的向量,则 C 为标量值方差。
如果 A 是其列表示随机变量或行表示观测值的矩阵,则 C 为对应的列方差沿着对角线排列的协方差矩阵。
C 按观测值数量 -1 实现归一化。如果仅有一个观测值,应按 1 进行归一化。
-1
如果 A 是标量,则 cov(A) 返回 0。如果 A 是空数组,则 cov(A) 返回 NaN。
cov(A)
0
C = cov(A,B) 返回两个随机变量 A 和 B 之间的协方差。
B
如果 A 和 B 是长度相同的观测值向量,则 cov(A,B) 为 2×2 协方差矩阵。
cov(A,B)
2
如果 A 和 B 是观测值矩阵,则 cov(A,B) 将 A 和 B 视为向量,并等价于 cov(A(:),B(:))。A 和 B 的大小必须相同。
cov(A(:),B(:))
如果 A 和 B 为标量,则 cov(A,B) 返回零的 2×2 块。如果 A 和 B 为空数组,则 cov(A,B) 返回 NaN 的 2×2 块。
C = cov(___,w) 为之前的任何语法指定归一化权重。如果 w = 0(默认值),则 C 按观测值数量 -1 实现归一化。w = 1 时,按观测值数量对它实现归一化。
w
w = 0
w = 1
C = cov(___,nanflag) 指定一个条件,用于在之前的任何语法的计算中忽略 NaN 值。例如,cov(A,'omitrows') 将忽略 A 的具有一个或多个 NaN 元素的所有行。
nanflag
cov(A,'omitrows')
全部折叠
创建一个 3×4 矩阵并计算它的协方差。
A = [5 0 3 7; 1 -5 7 3; 4 9 8 10]; C = cov(A)
C = 4×4 4.3333 8.8333 -3.0000 5.6667 8.8333 50.3333 6.5000 24.1667 -3.0000 6.5000 7.0000 1.0000 5.6667 24.1667 1.0000 12.3333
由于 A 的列数是 4,结果为 4×4 矩阵。
创建两个向量并计算它们的 2×2 协方差矩阵。
A = [3 6 4]; B = [7 12 -9]; cov(A,B)
ans = 2×2 2.3333 6.8333 6.8333 120.3333
创建两个大小相同的矩阵并计算它们的 2×2 协方差。
A = [2 0 -9; 3 4 1]; B = [5 2 6; -4 4 9]; cov(A,B)
ans = 2×2 22.1667 -6.9333 -6.9333 19.4667
创建一个矩阵并计算按行数归一化的协方差。
A = [1 3 -7; 3 9 2; -5 4 6]; C = cov(A,1)
C = 3×3 11.5556 5.1111 -10.2222 5.1111 6.8889 5.2222 -10.2222 5.2222 29.5556
创建一个矩阵并计算它的协方差,排除包含 NaN 值的任何行。
A = [1.77 -0.005 3.98; NaN -2.95 NaN; 2.54 0.19 1.01]
A = 3×3 1.7700 -0.0050 3.9800 NaN -2.9500 NaN 2.5400 0.1900 1.0100
C = cov(A,'omitrows')
C = 3×3 0.2964 0.0751 -1.1435 0.0751 0.0190 -0.2896 -1.1435 -0.2896 4.4104
输入数组,指定为向量或矩阵。
数据类型: single | double
single
double
附加的输入矩阵,指定为向量或矩阵。B 的大小必须与 A 相同。
归一化权重,指定为下列值之一:
0 - 输出按观测值数量 -1 实现归一化。如果仅有一个观测值,应按 1 进行归一化。
1 - 输出按观测值数量实现归一化。
1
'includenan'
'omitrows'
'partialrows'
NaN 条件,指定为下列值之一:
'includenan' - 计算协方差之前包含输入中的所有 NaN 值。
'omitrows' - 计算协方差之前忽略包含一个或多个 NaN 值的任何输入行。
'partialrows' - 对于每个双列协方差计算结果,仅忽略那些成对的 NaN 行。
协方差,指定为标量或矩阵。
对于单矩阵输入,C 基于用 A 表示的随机变量数(列数)提供大小 [size(A,2) size(A,2)]。列的方差沿着对角线排列。如果 A 是行或列向量,则 C 为标量值方差。
[size(A,2) size(A,2)]
对于二向量或二矩阵输入,C 是介于两个随机变量之间的 2×2 协方差矩阵。方差沿着 C 的对角线排列。
对于两个随机可变向量 A 和 B,协方差定义为
cov(A,B)=1N−1∑i=1N(Ai−μA)*(Bi−μB)
,其中,μA 是 A 的均值,μB 是 B 的均值,* 表示复共轭。
*
两个随机变量的协方差矩阵是每个变量间成对的协方差计算结果的矩阵,
C=(cov(A,A)cov(A,B)cov(B,A)cov(B,B)).
对于矩阵 A,它的列是由观测值组成的随机变量,其协方差矩阵就是每个列组合之间的成对协方差计算结果。换言之,C(i,j)=cov(A(:,i),A(:,j))。
对于由 N 个标量观测值组成的有限长向量 A,方差被定义为
V=1N−1∑i=1N|Ai−μ|2
,其中,μ 是 A 的均值,
μ=1N∑i=1NAi.
某些方差定义使用 N(而不是 N-1)的归一化因子,可以通过将 w 设置为 1 来指定该因子。在任一情况下,都假定均值包含常见的归一化因子 N。
此函数支持 tall 数组,但存在以下限制:
A 和 B 必须是相同大小的 tall 数组,即使两个数组均为向量亦如此。
不支持 'partialrows' 选项。
有关详细信息,请参阅 使用 tall 数组处理无法放入内存的数据。
用法说明和限制:
如果输入为可变大小并且在运行时为 [],则返回 [] 而不是 NaN。
[]
请参阅Variable-Sizing Restrictions for Code Generation of Toolbox Functions (MATLAB Coder)。
backgroundPool
ThreadPool
此函数完全支持基于线程的环境。有关详细信息,请参阅Run MATLAB Functions in Thread-Based Environment。
此函数完全支持 GPU 数组。有关详细信息,请参阅Run MATLAB Functions on a GPU (Parallel Computing Toolbox)。
此函数完全支持分布式数组。有关详细信息,请参阅Run MATLAB Functions with Distributed Arrays (Parallel Computing Toolbox)。
在 R2006a 之前推出
corrcoef | mean | median | std | var | xcorr | xcov
corrcoef
mean
median
std
var
xcorr
xcov
您曾对此示例进行过修改。是否要打开带有您的编辑的示例?
您点击的链接对应于以下 MATLAB 命令:
请在 MATLAB 命令行窗口中直接输入以执行命令。Web 浏览器不支持 MATLAB 命令。
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Contact your local office