Delete rows with NaN for a cell array

16 visualizzazioni (ultimi 30 giorni)
Rooy
Rooy il 26 Giu 2013
Commentato: YING CONG XIAO il 21 Apr 2021
I want to remove the rows that have NaN and still keep the dimension of the array intact.
[ NaN] [ NaN] [ NaN] [ NaN]
[ NaN] [ NaN] [ NaN] [ NaN]
'Total RADIO Drops' 'Total Drops' 'CC DCR (%)' 'RADIO DCR (%)'
Above is just an example, I have over a thousand rows.
The only problem I have now is removing rows which have NaN and string together
Thank you
  1 Commento
Rooy
Rooy il 26 Giu 2013
Is there a way to delete the rows which have strings and Nan mixed together ?
[ 'A'] [ NaN] [ NaN] [ NaN]
'Total RADIO Drops' 'Total Drops' 'CC DCR (%)' 'RADIO DCR (%)'

Accedi per commentare.

Risposta accettata

Tom
Tom il 26 Giu 2013
A(any(cellfun(@(x) any(isnan(x)),A),2),:) = [];

Più risposte (1)

Andrei Bobrov
Andrei Bobrov il 26 Giu 2013
Modificato: Andrei Bobrov il 26 Giu 2013
A - your cell array
out = A(any(cellfun(@(x)any(~isnan(x)),A),2),:);
ADD
out = A(all(cellfun(@(x)any(~isnan(x)),A),2),:);
  4 Commenti
Rooy
Rooy il 26 Giu 2013
Thank you for your great help
YING CONG XIAO
YING CONG XIAO il 21 Apr 2021
hi Andrei,
how to specify the range in this fun:
out = A(any(cellfun(@(x)any(~isnan(x)),A),2),:);

Accedi per commentare.

Community Treasure Hunt

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

Start Hunting!

Translated by