MATLAB Answers

Change value to NaN element

1 view (last 30 days)
Hi, i have a matrix 7938x498 with numerical and NaN values. I want to change value to some NaN elements but i don't know exactly their index in the matrix. I make an example to explain it better.
if i have a vector like this A=(NaN,NaN,NaN,NaN,NaN,1,5,7,9,NaN,NaN,NaN,NaN,5,5,53,3,NaN,NaN). How can i change the NaN values beetween 9 and 5 without change the others? Thanks
Giacomo Abrardo
Giacomo Abrardo on 27 Apr 2021
that's part of the matrix. I need to change the value 3985 and 3989 from second column

Sign in to comment.

Accepted Answer

the cyclist
the cyclist on 27 Apr 2021
Here is one way:
% The original data
A = [NaN,NaN,NaN,NaN,NaN,1,5,7,9,NaN,NaN,NaN,NaN,5,5,53,3,NaN,NaN];
% The indices of the numeric values
numericIndices = find(~isnan(A));
% The indices of the NaNs in the gap between the numeric values
gapIndices = setxor(min(numericIndices):max(numericIndices),numericIndices);
% Fill in the values you want to assign
A(gapIndices) = ...
  1 Comment
Giacomo Abrardo
Giacomo Abrardo on 27 Apr 2021
that's work. Thank you very much

Sign in to comment.

More Answers (0)


Community Treasure Hunt

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

Start Hunting!