From octave-sources-request at bevo dot che dot wisc dot edu Fri Apr 16 08:08:27 1999 Subject: Re: more semi-lame code... From: doolin at alpha-8 dot CE dot Berkeley dot EDU To: Francesco Potorti` Cc: doolin at alpha-8 dot CE dot Berkeley dot EDU, octave-sources@bevo.che.wisc.edu, doolin@alpha-8.CE.Berkeley.EDU Date: Fri, 16 Apr 1999 06:08:23 -0700 F dot Potorti at cnuce dot cnr dot it writes: > Attached is a minor utility to compute > cumulative averages. > > function av = cumaverage(x) > warn_empty_list_ok = 1; > av = []; > c = columns(x); > for j = 1:c > av = [av, sum(x(1,1:j))/j]; > end > endfunction > > >Doing like this should be hundredths of times faster for long vectors: > >cumaverage = cumsum(x) ./ [1:lenght(x)]; Yes, absolutely! I didn't know about cumsum function! Which turns the function into a one-liner! Many thanks, Dave D > >Francesco Potortl (researcher) Voice: +39-050-593 203 (op. 211) >Computer Networks Group Fax: +39-050-904052 >CNUCE-CNR, Via Santa Maria 36 Email: F dot Potorti at cnuce dot cnr dot it >56126 Pisa - Italy Web: http://fly.cnuce.cnr.it/