Is anyone aware of a package that allows one to perform a rolling regression? For instance, if I have a 1000 x 10 matrix and I want to loop through the rows of the matrix repeating the regression on a constant sample of 100 rows: x <- matrix(rnorm(1000*10),ncol=10) rolling.regression <- function(x,window.width=100) { ans <- matrix(NA,ncol=ncol(x),nrow=(nrow(x)-window.width+1)) for (i in window.width:nrow(x) ) { start.row <- (i - window.width + 1) end.row <- i result <- lm(x[start.row:end.row,1]~x[start.row:end.row,-1]) # store result ans[i-window.width+1,] <- as.numeric(result$coef) } ans } tmp <- rolling.regression(x) I'm sure there are more efficient ways to perform this analysis (using lm.fit for instance), but is anyone aware of a package that does this type of operation for fixed windows and expanding windows? Thanks, Whit Armstrong [[alternative HTML version deleted]]