Thanks. Problem solved.
> rollapply(x,3,force, align="left")
1 1 2 3
2 2 3 4
3 3 4 5
4 4 5 6
5 5 6 7
6 6 7 8
7 7 8 9
8 8 9 10
> x<-1:10
> embed(x, 3)[, 3:1]
[,1] [,2] [,3]
[1,] 1 2 3
[2,] 2 3 4
[3,] 3 4 5
[4,] 4 5 6
[5,] 5 6 7
[6,] 6 7 8
[7,] 7 8 9
[8,] 8 9 10
>
> Date: Sun, 2 Mar 2008 10:04:38 -0500
> From: [EMAIL PROTECTED]
> To: [EMAIL PROTECTED]
> Subject: Re: [R] Idioms for a timeseries operation - moving window
> CC: [email protected]
>
> Try:
>
> rollapply(x, 3, force)
>
> or
>
> embed(x, 3)[, 3:1]
>
> On Sun, Mar 2, 2008 at 9:53 AM, Bo Zhou <[EMAIL PROTECTED]> wrote:
> >
> > I needed that matrix for following calculations. So I don't think roll*
> > would work for me.
> >
> > Re: embed
> >
> > > x <- 1:10
> > > embed (x, 3)
> > [,1] [,2] [,3]
> > [1,] 3 2 1
> > [2,] 4 3 2
> > [3,] 5 4 3
> > [4,] 6 5 4
> > [5,] 7 6 5
> > [6,] 8 7 6
> > [7,] 9 8 7
> > [8,] 10 9 8
> > > x
> > [1] 1 2 3 4 5 6 7 8 9 10
> >
> > The matrix is in revered order. Anyway to put the matrix in the original
> > order? Ie
> > 1 2 3
> > 2 3 4
> > ...
> >
> >
> > Cheers,
> > Bo
> >
> >
> >
> >
> > > Date: Sun, 2 Mar 2008 09:40:09 -0500
> > > From: [EMAIL PROTECTED]
> > > To: [EMAIL PROTECTED]
> > > Subject: Re: [R] Idioms for a timeseries operation - moving window
> > > CC: [email protected]
> > >
> >
> > > See
> > >
> > > ?embed
> > >
> > > and from zoo see:
> > > ?rollapply
> > > ?rollmean
> > > ?rollmax
> > >
> > > There is a function coded in C in the caTools package for speed.
> > >
> > >
> > > On Sun, Mar 2, 2008 at 9:24 AM, Bo Zhou <[EMAIL PROTECTED]> wrote:
> > > >
> > > > Hi Guys,
> > > >
> > > > Need your wisdom on this.
> > > >
> > > > Say I have a time series (in zoo format) like this
> > > >
> > > >
> > > > > x <- zoo(11:21)
> > > > > x
> > > > 1 2 3 4 5 6 7 8 9 10 11
> > > > 11 12 13 14 15 16 17 18 19 20 21
> > > >
> > > >
> > > > I want to do a "moving window sampling" of it. The result can either be
> > a matrix or a dataframe like this
> > > >
> > > > my.super.moving.window(x, length=3, by=1)
> > > >
> > > > 11 12 13
> > > > 12 13 14
> > > > 13 14 15
> > > > 14 15 16
> > > > ....
> > > > 18 19 20
> > > > 19 20 21
> > > >
> > > > This shouldn't be new. Many many people must have done this before. Any
> > idea what's the best(efficient and elegant) way to do this?
> > > >
> > > > Cheers,
> > > >
> > > > Bo
> > > >
> > > >
> > > >
> > > >
> > > > _________________________________________________________________
> > > > Climb to the top of the charts! Play the word scramble challenge with
> > star power.
> > > >
> > > > [[alternative HTML version deleted]]
> > > >
> > > >
> > > > ______________________________________________
> > > > [email protected] mailing list
> > > > https://stat.ethz.ch/mailman/listinfo/r-help
> > > > PLEASE do read the posting guide
> > http://www.R-project.org/posting-guide.html
> > > > and provide commented, minimal, self-contained, reproducible code.
> > > >
> > > >
> >
> > ________________________________
> > Shed those extra pounds with MSN and The Biggest Loser! Learn more.
_________________________________________________________________
[[elided Hotmail spam]]
[[alternative HTML version deleted]]
______________________________________________
[email protected] mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.