filter function for aggregation of data

3 visualizzazioni (ultimi 30 giorni)
Camilla Santicoli
Camilla Santicoli il 27 Apr 2015
Commentato: Thorsten il 27 Apr 2015
Hi everybody! I'm wondering if there is a way to solve the following problem in a more efficient way instead of a for cycle: I have a vector of hourly values and I would like to aggregate these values to 3 hour values with a moving window such that the first value would be the sum of the first three elements, the second value the sum of element 2,3 and 4, the third value the sum of element 3,4 and 5 and so on... I used a for loop but this takes me a lot of time. I knwo that this can be done with the filter function but I didn't understand how it works exactly. Does anybody know how to solve it? Thanks a lot Camilla

Risposte (1)

Thorsten
Thorsten il 27 Apr 2015
x = randi(10, [1 10]); % sample data
F = 1/3*ones(1,3); % filter
xm3 = conv(x, F, 'valid');
  4 Commenti
Camilla Santicoli
Camilla Santicoli il 27 Apr 2015
thank you very much!
Thorsten
Thorsten il 27 Apr 2015
Please accept the answer.

Accedi per commentare.

Categorie

Scopri di più su MATLAB in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by