Problem 690. Remove the two elements next to NaN value
The aim is to remove the two elements next to NaN values inside a vector.
For example:
x = [6 10 5 8 9 NaN 23 9 7 3 21 43 NaN 4 6 7 8]
The output y will be:
y = [6 10 5 8 9 7 3 21 43 7 8]
Nan values and the 2 next elements after the NaN (23-9 and 4-6) have been removed.
There will be always NaN values in the input vector followed by at least 2 integers.
Solution Stats
Problem Comments
-
6 Comments
The term "next to NaN" would generally be considered as the one right before and the one right after NaN, if existing. Also the problem failed to say that NaN themselves need to be removed.
JF & LD, I agree with both of your comments. Furthermore, it is unfortunate that in the example the first NaN has digit "9" both immediately preceding it and two elements after it, making the procedure to get the result in that neighbourhood ambiguous.
not so easy problem. Took a lot of time for thinking!
Solution Comments
Show commentsGroup

Indexing I
- 27 Problems
- 236 Finishers
- Piecewise linear interpolation
- Longest run of consecutive numbers
- Construct an index vector from two input vectors in vectorized fashion
- Getting the indices from a matrix
- First non-zero element in each column
- Return unique values without sorting
- Return a list sorted by number of consecutive occurrences
- intersection of matrices
- Generate N equally spaced intervals between -L and L
- Check if number exists in vector
- Replicate elements in vectors
- We love vectorized solutions. Problem 1 : remove the row average.
- intersection of matrices
- Generate N equally spaced intervals between -L and L
- Create logical matrix with a specific row and column sums
- Return a list sorted by number of consecutive occurrences
- Replicate elements in vectors
- Get the elements of diagonal and antidiagonal for any m-by-n matrix
- Getting the indices from a matrix
- Check if number exists in vector
- Fill a zeros matrix
- Set the array elements whose value is 13 to 0
- Construct an index vector from two input vectors in vectorized fashion
- Joining Ranges
- Remove the two elements next to NaN value
- Reindex a vector
- Longest run of consecutive numbers
- Put two time series onto the same time basis
- Getting logical indexes
- Matrix indexing with two vectors of indices
- middleAsColumn: Return all but first and last element as a column vector
- Return elements unique to either input
- "Low : High - Low : High - Turn around " -- Create a subindices vector
- Return unique values without sorting
- Find the largest value in the 3D matrix
- Specific Element Count
- First non-zero element in each column
Problem Recent Solvers658
Problem Tags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!