0

我试图根据一个特征(我使用'if')将矩阵拆分为更小的矩阵。

   for jj = 1:length(FailureHoopUP_sorted)
    if FailureHoopUP_sorted(jj,1)==20
        FailureHoopUP_20(jj,:) = FailureHoopUP_sorted(jj,:);
    elseif FailureHoopUP_sorted(jj,1)==30
        FailureHoopUP_30(jj,:) = FailureHoopUP_sorted(jj,:);
    else
        FailureHoopUP_40(jj,:) = FailureHoopUP_sorted(jj,:);
    end
   end

我遇到的问题是在新创建的矩阵中的数据行之间存在零行。我想知道如何避免这种情况?

感谢您的帮助。

4

1 回答 1

1

您不需要循环,可以使用逻辑索引。例如:

FailureHoopUP_20=FailureHoopUP_sorted(FailureHoopUP_sorted(:,1)==20,:)
...
...    

这也应该解决零问题(发生这种情况是因为您保留了jj与 的长度相关的原始索引FailureHoopUP_sorted)。

于 2013-09-26T23:18:19.227 回答