Hello,
I have an irregular time series of the form :
Time Data Time1 Data1 ....
1 b 1 e
7 g 4 i
NA NA 5 k
NA NA NA NA ...
(the columns have varying length of NAs after a certain point)
Converting this to regular time series with Pastecs does not seem to
work, when I see the
entire data as a single series. So I remove the NAs and deal with one
series at a time in a loop.
Any suggestions ?
Thanks
A. Mani
--
A. Mani
Member, Cal. Math. Soc
Have you considered using 'corCAR1' with 'lme' in the
'nlme'
package?
Hope this helps.
Spencer Graves
p.s. If you are not familiar with this, I highly recommend Pinheiro,
J.C., and Bates, D.M. (2000) Mixed-Effects Models in S and S-PLUS
(Springer). The "~R\library\nlme\scripts" directory contains
"ch01.R",
"ch02.R", etc., which contain R scripts to reproduce virtually all the
examples in the text. These are especially valuable for R, because the
book was written before 'nlme' was ported to R, and there are a few
changes for which the version in the book gives the wrong answer, while
following the script gives the correct answer.
A Mani wrote:> Hello,
> I have an irregular time series of the form :
>
> Time Data Time1 Data1 ....
> 1 b 1 e
> 7 g 4 i
> NA NA 5 k
> NA NA NA NA ...
>
> (the columns have varying length of NAs after a certain point)
> Converting this to regular time series with Pastecs does not seem to
> work, when I see the
> entire data as a single series. So I remove the NAs and deal with one
> series at a time in a loop.
>
> Any suggestions ?
>
>
> Thanks
>
> A. Mani
>
>
>
The following reads in the series as a data frame
and then na.omit's the NA's and converts to zoo.
Optionally we can merge them back together
aligning them on the times.
library(zoo)
Lines <- "Time Data Time1 Data1
1 b 1 e
7 g 4 i
NA NA 5 k
NA NA NA NA
"
DF <- read.table(textConnection(Lines), header = TRUE)
f <- function(i) { DF <- na.omit(DF[i + 0:1]); zoo(DF[,2], DF[,1]) }
ix <- seq(1, ncol(DF), 2)
ser <- lapply(ix, f)
names(ser) <- names(DF)[-ix]
# optional
do.call(merge, ser)
On Fri, Mar 7, 2008 at 5:38 PM, A Mani <a.manigs at gmail.com>
wrote:> Hello,
> I have an irregular time series of the form :
>
> Time Data Time1 Data1 ....
> 1 b 1 e
> 7 g 4 i
> NA NA 5 k
> NA NA NA NA ...
>
> (the columns have varying length of NAs after a certain point)
> Converting this to regular time series with Pastecs does not seem to
> work, when I see the
> entire data as a single series. So I remove the NAs and deal with one
> series at a time in a loop.
>
> Any suggestions ?
>
>
> Thanks
>
> A. Mani
>
>
> --
> A. Mani
> Member, Cal. Math. Soc
>
> ______________________________________________
> R-help at r-project.org 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.
>