cov

Синтаксис

C = cov(A)
C = cov(A,B)
C = cov(___,w)
C = cov(___,nanflag)

Описание

пример

C = cov(A) возвращает ковариацию.

  • Если A является вектором наблюдений, C является отклонением со скалярным знаком.

  • Если A является матрицей, столбцы которой представляют случайные переменные и чьи строки представляют наблюдения, C является ковариационной матрицей с соответствующими отклонениями столбца по диагонали.

  • C нормализован количеством observations-1. Если существует только одно наблюдение, оно нормализовано 1.

  • Если A является скаляром, cov(A) возвращает 0. Если A является пустым массивом, cov(A) возвращает NaN.

пример

C = cov(A,B) возвращает ковариацию между двумя случайными переменными A и B.

  • Если A и B являются векторами наблюдений с равной длиной, cov(A,B) является 2-by-2 ковариационная матрица.

  • Если A и B являются матрицами наблюдений, cov(A,B) обрабатывает A и B как векторы и эквивалентен cov(A(:),B(:)). A и B должны иметь равный размер.

  • Если A и B являются скалярами, cov(A,B) возвращает 2-by-2 блок нулей. Если A и B являются пустыми массивами, cov(A,B) возвращает 2-by-2 блок NaN.

пример

C = cov(___,w) задает вес нормализации для любого из предыдущих синтаксисов. Когда w = 0 (значение по умолчанию), C нормализован количеством observations-1. Когда w = 1, это нормализовано количеством наблюдений.

пример

C = cov(___,nanflag) задает условие для исключения значений NaN от вычисления для любого из предыдущих синтаксисов. Например, cov(A,'omitrows') не использует любые строки A с одним или несколькими элементами NaN.

Примеры

свернуть все

Создайте матрицу 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

Дополнительная входная матрица, заданная как вектор или матрица. B должен быть одного размера как A.

Типы данных: single | double

Вес нормализации, заданный как одно из этих значений:

  • 0 — Вывод нормализован количеством observations-1. Если существует только одно наблюдение, оно нормализовано 1.

  • 1 — Вывод нормализован количеством наблюдений.

Типы данных: single | double

Условие NaN, заданное как одно из этих значений:

  • 'includenan' — включайте все значения NaN во входной параметр до вычисления ковариации.

  • 'omitrows' — не используйте любую строку входного параметра, содержащего одно или несколько значений NaN до вычисления ковариации.

  • 'partialrows' — не используйте строки, содержащие NaN только на попарной основе для каждого вычисления ковариации двух-столбца.

Типы данных: char

Выходные аргументы

свернуть все

Ковариация, заданная как скаляр или матрица.

  • Для единственного матричного входного параметра C имеет размер [size(A,2) size(A,2)] на основе количества случайных переменных (столбцы), представленные A. Отклонения столбцов приезжают диагональ. Если A является строкой или вектором - столбцом, C является отклонением со скалярным знаком.

  • Для двух-векторного или двух-матричного входного параметра C является 2-by-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 ((: i), (: J.

Отклонение

Поскольку случайная переменная векторизовала составленное из скалярных наблюдений N, отклонение задано как

V=1N−1∑i=1N|Ai−μ | 2

где μ является средним значением A,

μ = 1N∑i=1NAi.

Некоторые определения отклонения используют коэффициент нормализации N вместо N-1, который может быть задан установкой w к 1. В любом случае среднее значение принято, чтобы иметь обычный коэффициент нормализации N.

Расширенные возможности

Представлено до R2006a

Была ли эта тема полезной?