# Change value to NaN element

1 view (last 30 days)
Giacomo Abrardo on 27 Apr 2021
Commented: Giacomo Abrardo on 27 Apr 2021
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 on 27 Apr 2021
that's part of the matrix. I need to change the value 3985 and 3989 from second column

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) = ...
Giacomo Abrardo on 27 Apr 2021
that's work. Thank you very much