# File: aux2.r dayimpact <- function(vec) { num <- tapply(vec, rep(1:365, each = 48), mean, na.rm = TRUE) den <- tapply(vec, rep(1:365, each = 48), max, na.rm = TRUE) return(num / den) } nightimpact <- function(vec) { idnuits <- logical(48) idnuits[c(1:14, 47:48)] <- TRUE nuits <- vec[rep(idnuits, 365)] num <- tapply(nuits, rep(1:365, each = sum(idnuits)), mean, na.rm = TRUE) den <- tapply(vec, rep(1:365, each = 48), mean, na.rm = TRUE) return(num / den / 3) } lunchimpact <- function(vec) { idlunchs <- logical(48) idlunchs[25:30] <- TRUE lunchs <- vec[rep(idlunchs, 365)] num <- tapply(lunchs, rep(1:365, each = sum(idlunchs)), mean, na.rm = TRUE) den <- tapply(vec, rep(1:365, each = 48), mean, na.rm = TRUE) return(num / den / 8) }