How to reduce matrix size conditionally?
Afficher commentaires plus anciens
Hi everyone,
My dataset consists of 194 rows and 5 column. in each row either a non-zero value or NaN. I require to pick the non-zero value (only one). There may be more than one non-zero values but all are same, so i need only one. As a resul the size of output matrix will be 194 by 1.
Thansk.

Réponse acceptée
Plus de réponses (2)
Simon Chan
le 17 Mar 2022
Try this:
mean(N_total,2,'omitnan')
Davide Masiello
le 17 Mar 2022
Modifié(e) : Davide Masiello
le 17 Mar 2022
You could use the max function. See below
% here I reproduce your type of matrix
A = rand(194,1);
A = [A,A,A,A,A];
A(logical(randi([0,1],size(A)))) = nan
% Here I perform the required task
A = max(A,[],2)
Catégories
En savoir plus sur Logical dans Centre d'aide et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!