[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
## Re: Moving polynomial fit

**From**: |
macy |

**Subject**: |
Re: Moving polynomial fit |

**Date**: |
Sat, 5 Sep 2009 08:38:38 -0700 (PDT) |

**User-agent**: |
SquirrelMail/1.4.13 |

I had to do something like this for 2 minutes of streaming data once. The
FOR loop took 20 minutes+ and the array process took 12 seconds!
It went something like this:
Multiply the original vector in such a way as to make a 'shifted' array.
Where each line of the array is your original vector, but shifted slightly.
Then, apply to the array in a single stomp and you should be there
I had to expand the memory octave used, else kept crashing my system when
the data files were up around 20MB
Robert
>* I would like to write a script/function for use on a time series that will*
>* least squares fit a polynomial of a given degree to a moving window across*
>* the time series in the same way as a moving average computes an average of*
>* a*
>* moving window, the output of the script/function being a vector of the*
>* extreme right hand edge/last values of the fitted polynomial over the*
>* moving*
>* window. I have tried using the Savitsky-Golay filters from the Signals*
>* package but they are not suitable for my purposes as the end conditions*
>* mean*
>* that the values of the fitted polynomial at the right hand edges of the*
>* moving window are different from the values calculated when the data are*
>* no*
>* longer at the right hand edge. What in-built Octave functions should I*
>* consider using to achieve the above i.e. polyfit or some other*
>* function(s)?*
>* Also, as loops can be quite slow, is there a more efficient way of coding*
>* the above rather than having to resort to a for loop?*
>
>
>* --*
>* View this message in context:*
>* http://www.nabble.com/Moving-polynomial-fit-tp25309400p25309400.html*
>* Sent from the Octave - General mailing list archive at Nabble.com.*