How can I fix this code to calculate the running average of my data without using toolbox methods such as movmean or smooth?
1 visualización (últimos 30 días)
Mostrar comentarios más antiguos
Shelby Jacobs
el 6 de Sept. de 2018
Comentada: Kh zaa
el 16 de Sept. de 2018
The end goal is to smooth the data in a graph. What I have so far is in the first attachment and the .txt file is in the second. Thank you in advance for your help!
1 comentario
Greg
el 6 de Sept. de 2018
I see your attachments are labeled homework. Is the toolbox limitation a MATLAB license restriction (assumedly you want to save money), or an instruction restriction?
Many of the statistics functions ( movmean ) were moved into core MATLAB in R2016a - no longer requiring toolboxes. If the instructor said not to use pre-built algorithms, you have to do it the hard way. But that doesn't mean you can't check your own work against the built-in movmean, now does it?
Respuesta aceptada
Pierre845
el 6 de Sept. de 2018
function avg = running_avg(signal, avg_window)
avg = zeros(1, length(signal);
for i = avg_window:length(signal)
avg(1, i) = sum( signal(i-avg_window+1:i) ) / avg_window;
end
end
2 comentarios
Kh zaa
el 16 de Sept. de 2018
I use level-1 s-function in my simulink model. Measurements of 5 variables are collected in simulink and sent to s-function. In order to filter out some of measurements noise, i need to use the average of the snapshots received over a a time window (i.e. 2 second). how i can do that ? thanks in advance
Más respuestas (0)
Ver también
Categorías
Más información sobre Naming Conventions en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!