matlab计算同行不同列的两个矩阵的相关系数。

求教!!
数据源:nowsl矩阵(4*18),tzsl矩阵(4*46)
计算目的:计算nowsl矩阵中每一列向量与tzsl中每一列向量的相关系数,并将相关系数(不是矩阵)返回到dist矩阵中。
问题:
for j=1:18
for i=1:46
dist(i,j)=xcorr(nowsl(:,j),tzsl(:,i));
end
end
根据以上程序,总是出现下表赋值不匹配现象,不知道怎么做?而自相关函数corrcoef返回的是一个矩阵,而不是一个数字。问下该怎么做?

 채택된 답변

viyemej
viyemej 2022년 11월 23일

0 개 추천

没有必要用二重循环,corr 函数可以直接对两个矩阵的列两两求互相关,得到的正好是你需要的互相关系数矩阵。所以,你的二重循环代码:
for j=1:18
for i=1:46
dist(i,j)=corr(nowsl(:,j),tzsl(:,i));
end
end
可以简化为1句代码:
dist = corr(tzsl,nowsl);

추가 답변 (0개)

카테고리

도움말 센터File Exchange에서 Logical에 대해 자세히 알아보기

태그

질문:

2022년 11월 23일

답변:

2022년 11월 23일

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!