:
1) base . , , 1, 0 ( , diff == 1), :
No_Events <- tapply(diff(c(0, df$Event)) == 1, as.Date(df$Date), sum)
:
> No_Events
2002-04-27 2002-04-28
2 0
, , as.data.frame(No_Events) data.frame(Date = as.Date(names(No_Events)), No_Event = unname(No_Events)).
1a) aggregate tapply, tr, Date No_Event , 1, 1. aggregate:
tr <- transform(df, No_Event = diff(c(0, df$Event)) == 1, Date = as.Date(Date))
aggregate(No_Event ~ Date, tr, sum)
:
Date No_Event
1 2002-04-27 2
2 2002-04-28 0
2) . , diff == 1 aggregate:
library(zoo)
z <- read.zoo(df, tz = "")
m <- merge(z, No_Event = diff(z) == 1, fill = coredata(z[1]))
z.ag <- aggregate(m, as.Date(format(time(z))), sum)
:
> z.ag
z No_Event
2002-04-27 3 2
2002-04-28 3 0
z z.ag[, -1] z.ag[, -1, drop = FALSE].