Find all numeric values right after the NaN values in a column vector
Show older comments
Good evening,
I have a column vector such that
vec = [1 ; 2 ; 3 ; 4 ; Nan ; 5 ; 6 ; 7 ; 8 ; Nan ; 9 ; 10 ; 11 ; 12 ; Nan];
I would like to find extract the elements of the vector ''vec'' that are located right after the NaN, such that I would get a new vector:
new_vec=[5;9]
It is very easy to find the indices of all the NaN elements, however I don't know how to 'shift' those indices a place further to locate the values right after the NaN.
Thanks for your help in advance,
KMT
Accepted Answer
More Answers (1)
James Tursa
on 22 Jun 2017
Edited: James Tursa
on 22 Jun 2017
E.g.,
x = find(isnan(vec))+1;
x = x(x<=numel(vec)); % or x(x>numel(vec)) = [];
result = vec(x);
Categories
Find more on NaNs in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!