我正试图找到一种更好的方法来删除某些包含零的向量中的行。我现在正在做的是下面的代码:删除包含零的行
i = 1;
while i <= length(JAbs)
if JAbs(i) == 0
JAbs(i) = [];
JX(i) = [];
else
i = i+1;
end
end
我想有一个更简单的方法,将不胜感激任何帮助。
最好的问候, 阿希姆
我正试图找到一种更好的方法来删除某些包含零的向量中的行。我现在正在做的是下面的代码:删除包含零的行
i = 1;
while i <= length(JAbs)
if JAbs(i) == 0
JAbs(i) = [];
JX(i) = [];
else
i = i+1;
end
end
我想有一个更简单的方法,将不胜感激任何帮助。
最好的问候, 阿希姆
具有u尝试过的 “查找” 命令? Documentation from MathWorks
>> X=[1 2 3; 3 2 0; 1 2 3;0 3 2]
X =
1 2 3
3 2 0
1 2 3
0 3 2
删除行用零
X(sum((X==0),2)>0,:) = []
结果:[从基质去除零 - 不疏]的
X =
1 2 3
1 2 3
如果MATLAB允许负指数表示移除,那么** R **的确如此: - 是不是很好 –
可能重复(HTTP://计算器。 com/questions/738438 /从-a-matrix-removing-sparse中删除零) – Jonas
没有重复,因为我的问题是如何做到这一点不仅对于一个向量,而是对于多个向量w这里需要删除同一行。请参阅我的示例代码,其中JAbs和JX都将行删除。 – Achim
它仍然是相同的操作,除了两个向量:'goodRows = JAbs〜= 0; JAbs = JAbs(goodRows); JX = JX(goodRows);' – Jonas