Count number of smaller than the threshold in the certain rows of cell arrays

4 Ansichten (letzte 30 Tage)
Dear all,
I have a 1 x 3 cell array, each 3 array includes 360x1 double. For each 1 to 360 rows stored in every 3 arrays, I want to know how many times I have smaller than -0.5 values. For example, I want to consider all first rows in each array and count that there is any smaller than -0.5 exist in them. Then consider all second rows in each array, and so on. I don't want to look at each array individually but I need to consider every row in all arrays as integrated rows.
So input is 1 x 3 cell array. And the output is: 3 x 1 double (number of times each row has smaller than -0.5 values)
Any advice is really helpful
Thank you.

Akzeptierte Antwort

Matt J
Matt J am 17 Dez. 2020
Bearbeitet: Matt J am 17 Dez. 2020
sum(cell2mat(CELL)<-0.5,1).'
  3 Kommentare
Matt J
Matt J am 18 Dez. 2020
Bearbeitet: Matt J am 18 Dez. 2020
What you described cannot lead to a 3x1 double vector, which is what you said you expected the output to be. However, the modification you're talking about is simply,
sum(cell2mat(CELL)<-0.5,2)
Generally, speaking there doesn't seem to be any reason for you to be holding your data as a cell array. You should just make it into a 360x3 double matrix,
C=cell2mat(CELL);
BN
BN am 18 Dez. 2020
Thank you so much, Yes you right. This was exactly what I needed.
Best Regards.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Matrix Indexing finden Sie in Help Center und File Exchange

Produkte


Version

R2020a

Community Treasure Hunt

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

Start Hunting!

Translated by