I have a matrix as following:
A = [0,0;0,0;800,1096;1097,1461;1462,1701]
The amount of rows with 0's can be different depending on the input.
I'm trying to remove all the rows with 0's.
I've tried many different related questions but can't seem to figure it out.
One of the latest solutions I tried is this:
rowsWithZeros = any(A==0,"all");
A = A(~rowsWithZeros,:);

1 件のコメント

Torsten
Torsten 2023 年 1 月 17 日
I'm trying to remove all the rows with 0's.
All rows where at least one element is 0 or all rows where all elements are 0 ?

サインインしてコメントする。

 採用された回答

Torsten
Torsten 2023 年 1 月 17 日
編集済み: Torsten 2023 年 1 月 17 日

1 投票

% First case (see above)
A = [0,0;0,0;800,1096;0,1461;1462,1701];
A( any(~A,2), : ) = [];
A
A = 2×2
800 1096 1462 1701
% Second case (see above)
A = [0,0;0,0;800,1096;0,1461;1462,1701];
A( all(~A,2), : ) = [];
A
A = 3×2
800 1096 0 1461 1462 1701

その他の回答 (0 件)

カテゴリ

ヘルプ センター および File ExchangeOperating on Diagonal Matrices についてさらに検索

製品

リリース

R2022b

タグ

質問済み:

2023 年 1 月 17 日

編集済み:

2023 年 1 月 17 日

Community Treasure Hunt

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

Start Hunting!

Translated by