how can i convert the 1 sec file to 1 min by averageing the reading of each 60 rows and the program repeat it every 60 rows?

1 visualizzazione (ultimi 30 giorni)
i had two data series of magnetic survey, one every 1 sec and the other every 1 min. how can i convert the 1 sec file to 1 min by averageing the reading of each 60 rows and the program repeat it every 60 rows?

Risposta accettata

dpb
dpb il 23 Ago 2014
The Matlab "trick" for this is to rely on memory storage order...
x=mean(reshape(x,60,[])).';
leaves column vector of the averages of the 60-element columns created by the reshape operation. If you number of elements isn't precisely divisible by 60, you'll need to account for it in the second argument when reshape to the multiple or truncate first.
  5 Commenti
zeinab
zeinab il 23 Ago 2014
Modificato: zeinab il 23 Ago 2014
thanks alot i will try this, but could you tell me if for loop will work? and how?
dpb
dpb il 23 Ago 2014
It would, but why not use the facilities of Matlab array operations? It's the whole point of Matlab.

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