Effacer les filtres
Effacer les filtres

How does tilde remove NaN's from dataset?

2 vues (au cours des 30 derniers jours)
Ralph
Ralph le 3 Mar 2014
Commenté : Ralph le 3 Mar 2014
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.

Réponse acceptée

Walter Roberson
Walter Roberson le 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 commentaire
Ralph
Ralph le 3 Mar 2014
Thank you for responding, Walter. I think that may clear up my confusion.

Connectez-vous pour commenter.

Plus de réponses (1)

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

Connectez-vous pour commenter.

Catégories

En savoir plus sur Logical dans Help Center et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by