Я пытаюсь создать 2 nxm матрицы (A и B), где все столбцы A и B коррелируют друг с другом (0.6). Значения в матрицах A и B взяты из отдельных нормальных распределений. У меня есть следующее, но когда я проверяю корреляции на выходе, это не 0,6. Что я делаю не так?Создание матрицы коррелированных векторов
m=30
n=100
%Two distributions
Mu1=0.0033;
stdev1=0.0208;
Mu2=0.0033;
stdev2=0.016801;
cor=0.6;
%creating a nxm matrix by calculating correlated vectors one by one
for y=1:m
W(1:n,1)=Mu1+stdev1*randn(n,1);
W(1:n,2)=Mu2+stdev2*randn(n,1);
R=[1 cor;cor 1];
L=chol(R);
W=W*L;
%Transfer to seperate matrices A and B
A(:,y)=W(:,1);
B(:,y)=W(:,2);
end
'corr (A (:), B (:))' приводит к примерно 0,68 для меня. Это «проблема»? –
Да. Хотя значения могут значительно отличаться. Последние три я пробовал: 0.4485, 0.8335, 0.6640. Разве это не должно быть, по крайней мере, ближе к отметке 0,6? – AJM