How do I keep consecutive number in a matrix?

For a matrix A,
A = [1 1 0 0 1 1 0 0;
1 0 0 0 1 1 0 0;
0 1 0 0 1 1 0 0]
I am trying to get B. How do I make it?
B = [1 1 0 0 0 0 0 0;
1 0 0 0 0 0 0 0;
0 0 0 0 0 0 0 0]
If the 1st number of a row is 1,
then the 1st sequence of consecutive 1 is kept and the rest numbers in that row turn 0.
i.e., A(1,:) -> B(1,:), A(2,:) -> B(2,:)
If the 1st number of a row is 0,
then all numbers in that row turn 0.
i.e., A(3,:) -> B(3,:)

 採用された回答

Matt J
Matt J 2018 年 12 月 25 日

2 投票

B=cummin(A,2);

2 件のコメント

Image Analyst
Image Analyst 2018 年 12 月 25 日
Clever. I didn't know about this function. +1 vote.
Linjun He
Linjun He 2018 年 12 月 25 日
Cool!

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

その他の回答 (0 件)

カテゴリ

ヘルプ センター および File ExchangeCreating and Concatenating Matrices についてさらに検索

質問済み:

2018 年 12 月 25 日

コメント済み:

2018 年 12 月 25 日

Community Treasure Hunt

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

Start Hunting!

Translated by