days=Sys.Date()-1:70
price=abs(rnorm(70))
regular=rep(c(0,0,0,0,1,0,1,0,0,1),c(7,7,7,7,7,7,7,7,7,7))
y=data.frame(cbind(days,price,regular))


y is like
    days      price regular
1  14990 0.16149463       0
2  14989 1.69519358       0
3  14988 1.57821998       0
4  14987 0.47614311       0
5  14986 0.87016180       0
6  14985 2.55679229       0
7  14984 0.89753533       0


the output I want:
have another column appended to y, whose value is the max price in the recent 2 
**regular** weeks.
So if the current row is today, then get the max price of the past 14 days 
(including today) if the last 2 week are regular weeks,  if one of the last 2 
weeks is not regular week, then I need to go back further to find the max 
price, as I need the max price for the last 2 **regular** weeks. How can I do 
that? Or I have to use loop/if to do it?




BTW, why the days is like 14990,14989, after cbind(days,price,regular)? before 
the cbind, days is like the format "2010-12-23".
        [[alternative HTML version deleted]]

______________________________________________
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.

Reply via email to