Smooth bad data in MattLab

1 visualizzazione (ultimi 30 giorni)
Connor Burchell
Connor Burchell il 24 Feb 2020
Commentato: Alex Mcaulley il 24 Feb 2020
I have some Velocity/Elevation data taken in a flume channel using an ADV probe. The majority of the data is good however, at certain elevations the data is erratic and the mean data plotted shifts quite considerably. (See below for an attached image). I am hoping to smooth this data out and generate a nice curve. Any suggestions?
  2 Commenti
Alex Mcaulley
Alex Mcaulley il 24 Feb 2020
You can try with smooth or medfilt1
Star Strider
Star Strider il 24 Feb 2020
The smoothdata function is another option.

Accedi per commentare.

Risposta accettata

ME
ME il 24 Feb 2020
I think you could easily do this by using find to locate the indices of all values lying in the shifted range. This would be something like:
idx = find(y>= 80 & y<=100)
but with the limits tweaked appropriately to set the exact range to be adjusted.
You can then use these indices to alter the relevant portion of the x data using something along the lines of:
X(idx) = X(idx) + 0.1
or whatever the appropriate value to shift is.
I'm sure there is much fancier and more automated ways of doing this but as a first approximation this should do a pretty good job.
  3 Commenti
ME
ME il 24 Feb 2020
I never said this was a fancy answer or even necessarily a good one! But it would give a quick way to get what was asked for. If you are going to be negative about peoples answers then how about trying to give some constructive feedback on how it could be improved or an alternative approach? Lets try to make this a positive place and cut out all of the negativity.
Alex Mcaulley
Alex Mcaulley il 24 Feb 2020
I'm sorry, it wasn't my intention, your answer just surprised me and sometimes the simplest answer is the most useful

Accedi per commentare.

Più risposte (0)

Community Treasure Hunt

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

Start Hunting!

Translated by