On Nov 15, 2007 12:54 PM, Carles Fan <[EMAIL PROTECTED]> wrote: > Dear all > > i have a time series containing trading dates and historical stock prices: > Date Price > 10-Jan-2007 100 > 11-Jan-2007 101 > 13-Jan-2007 99 > ...... > ...... > ...... > 10-Nov-2007 200 > > i want to sample every 21st data of each month: > 21-Jan-2007 101 > 21-Feb-2007 111 > 21-Mar-2007 131 > ...... > ...... > ...... > 21-Oct-2007 140 > > 1) how can i do that? > 2) if some of the dates are non-trading day, how can i tell "R" to use > "modified following" or "following" data?
Using zoo, z is some test data. zz is only those points whose day of the month is 21 or more. In the last line we keep only the first point in each month in zz. library(zoo) z <- zoo(101:200, as.Date("2000-01-01") + seq(0, len = 100, by = 2)) zz <- z[as.numeric(format(time(z), "%d")) >= 21] zz[!duplicated(as.yearmon(time(zz)))] ______________________________________________ R-help@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.