Я думаю, вы просто запутались с ковариацией и ковариационной матрицей, и математические обозначения и входные данные функции MATLAB выглядят одинаково.В математике cov(x,y)
означает ковариацию двух переменных x
и y
.В MATLAB cov(x,y)
вычисляет ковариационную матрицу из x
и y
.Здесь cov
- это функция, а x
и y
- входные данные.
Для ясности позвольте мне обозначить ковариацию C
.cov(x,y)
MATLAB возвращает матрицу вида
C_xx C_xy
C_yx C_yy
Как указал RichC, вам нужны недиагонали, C_xy
(обратите внимание, что C_xy=C_yx
для реальных переменных x
и y
).Сценарий MATLAB, который выдает коэффициент Пирсона для двух переменных x
и y
, имеет вид:
C=cov(x,y);
p=C(2)/(std(x)*std(y));