MATLAB: How to remove data discontinuities, jumps, outliers, and other artifacts that are not noise. Smoothing is bad,

change pointdata discontinuitydata jumpsdata outliers

I'd like to hear of cool ways to process what should nominally be smooth data and detect and remove jumps, single point outliers, and other artifacts that are not noise. The data must be knit together prior to doing a nonlinear regression fit to a model.

Best Answer

You do not know what is noise and what is not until you have a model to compare against. You therefore cannot eliminate the noise in order to fit to determine what your model is.
With a non-linear model, a value that is much different than the others is not necessarily an artifact or noise. For example it might turn out that the model was y = 1/(a*x-b)^2 in which case if x turned out to be very close to b/a then the y value could be quite big but just a very short distance away y might be much smaller. Eliminating the large y value would, in such a case, lead to an incorrect model.