i need to delete a zero from a single row 10 column vector
Afficher commentaires plus anciens
how can i delete this first 0
1.0e+03 *
0 1.0794 0.9376 0.8301 0.7477 0.6838 0.5939 0.5366 0.4988 0.4732
so it would look like this
1.0e+03 *
1.0794 0.9376 0.8301 0.7477 0.6838 0.5939 0.5366 0.4988 0.4732
Réponse acceptée
Plus de réponses (2)
Image Analyst
le 28 Avr 2019
Modifié(e) : Image Analyst
le 28 Avr 2019
To delete only the FIRST zero (not all zeros) here is one way.
indexes = find(v == 0);
if ~isempty(indexes) % Only try to delete if we actually FOUND a zero!
v(indexes(1)) = []; % Do the deletion.
end
2 commentaires
madhan ravi
le 28 Avr 2019
Modifié(e) : madhan ravi
le 28 Avr 2019
v(indexes(1) = []; % Do the deletion.
^--- missed a paranthesis
Image Analyst
le 28 Avr 2019
You're right - thanks - fixed.
dpb
le 28 Avr 2019
As we've covered the other cases pretty thoroughly...
For the specific input vector OP showed where it is almost certain it is known a priori the first value in the array is zero from outside knowledge of what created the vector in the first place, simply
A=A(2:end);
Catégories
En savoir plus sur Structures dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!