Преобразуйте ковариационную матрицу в корреляционную матрицу
Сравните корреляционную матрицу, полученную путем применения corrcov
на ковариационной матрице с корреляционной матрицей, полученной прямым расчетом с помощью corrcoef
на входной матрице.
Загрузите hospital
набор данных и создает матрицу, содержащую Weight
и BloodPressure
измерения. Обратите внимание на то, что hospital.BloodPressure
имеет два столбца данных.
load hospital
X = [hospital.Weight hospital.BloodPressure];
Вычислите ковариационную матрицу.
C = cov(X)
C = 3×3
706.0404 27.7879 41.0202
27.7879 45.0622 23.8194
41.0202 23.8194 48.0590
Вычислите корреляционную матрицу из ковариационной матрицы при помощи corrcov
.
R1 = corrcov(C)
R1 = 3×3
1.0000 0.1558 0.2227
0.1558 1.0000 0.5118
0.2227 0.5118 1.0000
Вычислите корреляционную матрицу непосредственно при помощи corrcoef
, и затем сравните R1
с R2
.
R2 = corrcoef(X)
R2 = 3×3
1.0000 0.1558 0.2227
0.1558 1.0000 0.5118
0.2227 0.5118 1.0000
Корреляционные матрицы R1
и R2
то же самое.
Найдите вектор стандартных отклонений от ковариационной матрицы и покажите отношение между стандартными отклонениями и ковариационной матрицей.
Загрузите hospital
набор данных и создает матрицу, содержащую Weight
, BloodPressure
, и Age
измерения. Обратите внимание на то, что hospital.BloodPressure
имеет два столбца данных.
load hospital
X = [hospital.Weight hospital.BloodPressure hospital.Age];
Вычислите ковариационную матрицу X
.
C = cov(X)
C = 4×4
706.0404 27.7879 41.0202 17.5152
27.7879 45.0622 23.8194 6.4966
41.0202 23.8194 48.0590 4.0315
17.5152 6.4966 4.0315 52.0622
C
является квадратным, симметричным, и положительный полуопределенный. Диагональные элементы C
отклонения этих четырех переменных в X
.
Вычислите корреляционную матрицу и стандартные отклонения X
от ковариационной матрицы C
.
[R,s1] = corrcov(C)
R = 4×4
1.0000 0.1558 0.2227 0.0914
0.1558 1.0000 0.5118 0.1341
0.2227 0.5118 1.0000 0.0806
0.0914 0.1341 0.0806 1.0000
s1 = 4×1
26.5714
6.7128
6.9325
7.2154
Вычислите квадратный корень из диагональных элементов в C
, и затем сравните s1
с s2
.
s2 = sqrt(diag(C))
s2 = 4×1
26.5714
6.7128
6.9325
7.2154
s1
и s2
равны и соответствуют стандартному отклонению переменных в X
.
C
— Ковариационная матрицаКовариационная матрица в виде квадратной, симметричной, и положительной полуопределенной матрицы.
Для матричного X, который имеет наблюдения N (строки) и случайные переменные n (столбцы), C
n-by-n матрица. Элементы диагонали n C
отклонения случайных переменных n в X и нулевого диагонального элемента в C
указывает на постоянную переменную в X.
Типы данных: single
| double
R
— Корреляционная матрицаКорреляционная матрица, возвращенная как матрица, которая соответствует ковариационной матрице C
.
Типы данных: single
| double
sigma
— Стандартные отклоненияСтандартные отклонения, возвращенные как n-by-1 вектор.
Элементы sigma
стандартные отклонения переменных в X, N-by-n матрица, которая производит C
. Строка i
в sigma
соответствует стандартному отклонению столбца i
в X.
Типы данных: single
| double
Для двух векторов случайной переменной A и B, ковариация задана как
где N является длиной каждого столбца, μA и μB являются средними значениями A и B, соответственно, и *
обозначает сопряженное комплексное число.
Ковариационная матрица двух случайных переменных является матрицей попарных вычислений ковариации между каждой переменной,
Для матричного X, в котором каждый столбец является случайной переменной, состоявшей из наблюдений, ковариационная матрица является попарным вычислением ковариации между каждой комбинацией столбца. Другими словами, .
Для вектора случайной переменной A сочинил скалярных наблюдений N, отклонение задано как
где μ является средним значением A,
Некоторые определения отклонения используют коэффициент нормализации N вместо N–1, но среднее значение всегда имеет коэффициент нормализации N.
Эта функция полностью поддерживает массивы графического процессора. Для получения дополнительной информации смотрите функции MATLAB Запуска на графическом процессоре (Parallel Computing Toolbox).
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.