Info

此问题已关闭。 请重新打开它进行编辑或回答。

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

1 次查看(过去 30 天)
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)

回答(1 个)

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

Community Treasure Hunt

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

Start Hunting!

Translated by