Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
基于Matlab的曲线关联_Matlab - Fatal编程技术网

基于Matlab的曲线关联

基于Matlab的曲线关联,matlab,Matlab,我有两组数据。它们都是一个矩阵,有两列,第一列表示索引x,第二列表示y。我想看看这些数据集的曲线有多相似。换句话说,我需要用两个矩阵表示这两条曲线的相关性。 谢谢你的帮助 您可能正在寻找corr2函数,该函数计算矩阵中每个对应值的相关系数: CorrMatrix = corr2(A,B) plot(x,CorrMatrix); 这就是你的意思吗?如果没有,请不要犹豫询问更多细节 对于大小不等的矩阵,我认为您只有以下选项: 如果您有信号处理工具箱,则可以使用互相关函数xcorr2,否则可以执行

我有两组数据。它们都是一个矩阵,有两列,第一列表示索引x,第二列表示y。我想看看这些数据集的曲线有多相似。换句话说,我需要用两个矩阵表示这两条曲线的相关性。
谢谢你的帮助

您可能正在寻找corr2函数,该函数计算矩阵中每个对应值的相关系数:

CorrMatrix = corr2(A,B)

plot(x,CorrMatrix);
这就是你的意思吗?如果没有,请不要犹豫询问更多细节

对于大小不等的矩阵,我认为您只有以下选项:

如果您有信号处理工具箱,则可以使用互相关函数xcorr2,否则可以执行以下操作:

1) 或者在使用较大矩阵的一部分时计算数据的相关性,以便元素的数量相似:(对不起,我使用的值实际上是伪值。)

或2)

在谷歌搜索之后,我看到这里发布了一个类似的问题,上面说你可以通过傅立叶变换来获得相关性:


我使用的这两个矩阵的行号不同。我可以使用不同行号的相关函数吗?让我再解释一下:在第一列中,我有时间信息,在第二列中,我有特定的时间值。结束时间是相同的,但是其中一个矩阵在时间段之间有更多的信息,因此一个矩阵有更多的行。它是这样的:A=[12;2.35.6]B=[11.21.62;2.42.64.8]。我想看看这些曲线的相似性,它们是这些矩阵的结果。
    clear 
    clc

    % Create dummy matrices of unequal sizes
    x =1:10;
    x2 = 1:6;

    A(:,1) = x;
    A(:,2) = sin(x);

    B(:,1) = x2;
    B(:,2) = cos(x2);

    A,B

    C = corr2(A(1:6,:),B)

A =

    1.0000    0.8415
    2.0000    0.9093
    3.0000    0.1411
    4.0000   -0.7568
    5.0000   -0.9589
    6.0000   -0.2794
    7.0000    0.6570
    8.0000    0.9894
    9.0000    0.4121
   10.0000   -0.5440


B =

    1.0000    0.5403
    2.0000   -0.4161
    3.0000   -0.9900
    4.0000   -0.6536
    5.0000    0.2837
    6.0000    0.9602


C =

    0.9463