I have an n x 1 array containing values. For exmaple A =
1
0
0
2
0
3
I was wondering if it was possible to create another array except without the zero values. For example
B =
1
2
3

1 commentaire

A = [1;0;0;2;0;3]
A = 6×1
1 0 0 2 0 3
B = nonzeros(A) % Introduced before R2006a
B = 3×1
1 2 3

Connectez-vous pour commenter.

 Réponse acceptée

Star Strider
Star Strider le 14 Mai 2015
Using logical indexing, you can calculate ‘B’ in one line:
B = A(A~=0)

6 commentaires

Alice Stembridge
Alice Stembridge le 14 Mai 2015
Thank you so much, can you do the same thing except rather than zeros it says NaN?
B = A;
B(B==0) = NaN;
Alice Stembridge
Alice Stembridge le 14 Mai 2015
What I mean't was can I remove the values which say NaN rather than if they contain a zero?
B = A(~isnan(A));
Star Strider
Star Strider le 14 Mai 2015
Thank you Walter.
I was away for a few minutes with another Answer.
you can use R = rmmissing(A) now :)

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur MATLAB dans Centre d'aide et File Exchange

Produits

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by