Azzera filtri
Azzera filtri

How does tilde remove NaN's from dataset?

2 visualizzazioni (ultimi 30 giorni)
Given a C = m x n matrix of 1's and 0's, and a data set B = r x s with NaN's mixed in with numeric data, how do I use the tilde to remove the NaN's? I have seen this in an example:
A=B(~C,:); and it worked in the example.
I cannot recreate it in a different problem. I also cannot find any explanation in any Mathworks information that explains it.

Risposta accettata

Walter Roberson
Walter Roberson il 3 Mar 2014
You are not applying ~ to the NaNs, you are applying ~ to the matrix of 0 and 1. ~ is logical negation, so all the places in C that were 0 become "true" (1) and all the places in C that were anything else become "false" (0). That matrix of true and false is then used "logical indexing". You can read about that Steve's Blog
  1 Commento
Ralph
Ralph il 3 Mar 2014
Thank you for responding, Walter. I think that may clear up my confusion.

Accedi per commentare.

Più risposte (1)

Rick Rosson
Rick Rosson il 3 Mar 2014
Is this what you are trying to do?
C = isnan(B);
A = B(~C);
  1 Commento
Ralph
Ralph il 3 Mar 2014
Hi, Rick. I think the other response I received may explain my confusion on using tilde. Thank you for responding.

Accedi per commentare.

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by