Smoothing the Data with For Loop (Sliding Window)

18 views (last 30 days)
Hello,
I am taking the datas from my sensor and the datas are the multiples of 5.8594 so my whole data looks like a mix of square wave and ramp function. What I want is, smooth the corners of this data with for loop. I want to see exponential-like or sinusoidal-like signal while iterating. I can do it with whole data but can not do it with for loop.
Thank you for your suggestions.
  2 Comments
dpb
dpb on 4 Feb 2023
You don't explain the problem fully nor provide the code illustrate what is what you tried that doesn't work...
Guessing from what wasn't said, if the need is to smooth the data during the collection process as it arrives, then investigate the use of exponential weighting of the input signals as arrive instead of trying to post-process.
Kalman filtering is another technique may be of use here...
Jan
Jan on 5 Feb 2023
"I can do it with whole data but can not do it with for loop." - Why not? what exactly is the problem and what is the purpose to use a loop at all? What do you want to loop over?

Sign in to comment.

Answers (1)

Mathieu NOE
Mathieu NOE on 10 Feb 2023
hello
seems to me smoothdata can do what you need
plot(temperature)
hold on
ts = smoothdata(temperature,'gaussian',30);
plot(ts)

Products


Release

R2019b

Community Treasure Hunt

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

Start Hunting!