I want to erase following data when data goes down under 28.
For example,
If I have this matrix
36 33 31 29 30 27 31 33 24,
I want to make the matrix into
36 33 31 29 30 NaN NaN NaN NaN.
--> when I first met a number under 28, following datas are erased like this.
Thanks.

 採用された回答

Walter Roberson
Walter Roberson 2021 年 3 月 9 日

1 投票

x(find(x<28,1):end) = nan ;
or
x(~cumprod(x>=28)) = nan;

2 件のコメント

Mehmed Saad
Mehmed Saad 2021 年 3 月 9 日
oops i posted the same answer without looking
HyoJae Lee
HyoJae Lee 2021 年 3 月 9 日
Thanks for helping.
This is the one that I want to find.
Appreciated!

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

その他の回答 (1 件)

Mehmed Saad
Mehmed Saad 2021 年 3 月 9 日

1 投票

you can use find but not recommended
x = [36 33 31 29 30 27 31 33 24];
x(find(x<28,1):end) = nan
x =
36 33 31 29 30 NaN NaN NaN NaN

1 件のコメント

HyoJae Lee
HyoJae Lee 2021 年 3 月 9 日
Thanks for help!

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

カテゴリ

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by