Matlab:循环遍历数组的各个部分

时间:2016-03-28 20:34:16

标签: matlab loops matrix indexing

我有2 m x n矩阵,并且想要计算给定窗口长度内的段的规范相关性。例如,如果我的窗口长度为100,我想要

的相关系数
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}


$sql="SELECT Nr FROM AlleTransaktionen1";
$my_money = 0;
if ($conn->multi_query($sql) === TRUE) {
    $result = $conn->query($sql);
    while($row = $result->fetch_assoc()) {
        echo"$row[Nr]";
    }
    echo "$my_money";
} else {
    echo"Fehler: " . $sql . "<br>" . $conn->error;
}
$conn->close();

等等都积累成一个矩阵。我只对相关系数r感兴趣。

我正在尝试以下方法:

canoncorr(X(1:100,:),Y(1:100,:))
canoncorr(X(101:200,:),Y(101:200,:))
canoncorr(X(201:300,:),Y(201:300,:))
...

但是,我的结果矩阵不仅保存了第1行,第101行,第201行等的值,而且还填充了1到101之间的行,依此类推。使用零。

如果我尝试

win=100;
r=[];
for i=1:win:size(X,1)-win-2
    [A,B,r(i,:)] = canoncorr(X(i:i+win,:),Y(i:i+win,:));
end

然后下标的分配维度不匹配。

我做错了什么?

1 个答案:

答案 0 :(得分:0)

i从1,101,201开始......

所以,请检查第101行,看看它们是否为零。

您也可以spy(r)查看矩阵元素。