"Luca " <l.presottoRE@MOVE.campus.unimib.NOTit> wrote in message <email@example.com>... > Hi everyone. > Let's suppose to have these two vectors: > > t=0:0.01:1000; %timestamps > val = rand(size(t)); %value associated with each timestamp > > Now let's suppose I want to calculate the mean value of val in each interval of "t" broad "1". > What would be the best way to do it? > The dumbest would be something _like_ (I'm sure somebody will find a couple of minor errors :-). But try to get the point!): > > t2 = ceil (t); > [t2,I]= unique (t2,'first'); > [t2,J]=unique (t2,'last'); > meanVal= zeros(max(t2(:),1); > for i=1:numel(meanVal) > meanVal(i) = mean(val(I(i):val(J(i)); > end > > Now... I know that matlab always has some built in functions that does all of these basic operations better and faster. > So.... what would be a smarter way to do this??
% This sounds like you are trying to compute a "running average" of the vector. % If so, see the Examples section of