Info

This question is closed. Reopen it to edit or answer.

If statement: if none of doubles~= X then change the value of X to the closest to X...

1 view (last 30 days)
I am designing a GUI to plot data on a user chosen time interval. I have a double 100x1 of datenum values which are not uniformly spaced. When user inputs a start time and there is no such double value I would like to have an if statement which will replace the start time with the closest there is to the inputted time. I would like to know if there is such a function ''if none such value found''? Thanks for help! (I presume isempty() doesn't work since my input is not an array and always has some values in it)

Answers (1)

Walter Roberson
Walter Roberson on 23 Jul 2019
One step: interp1 with 'nearest'
But also very reasonable:
[~, idx] = min(abs(Times - entered_time))
Times(idx)

This question is closed.

Community Treasure Hunt

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

Start Hunting!