#-- NOx levels example (see for details Myllymaki and Mrkvicka, 2020)
if(require("fda.usc", quietly=TRUE)) {
# Prepare data
data("poblenou")
fest <- poblenou$df$day.festive; week <- as.integer(poblenou$df$day.week)
Type <- vector(length=length(fest))
Type[fest == 1 | week >= 6] <- "Free"
Type[fest == 0 & week %in% 1:4] <- "MonThu"
Type[fest == 0 & week == 5] <- "Fri"
Type <- factor(Type, levels = c("MonThu", "Fri", "Free"))
# (log) Data as a curve_set
cset <- curve_set(r = 0:23,
obs = t(log(poblenou[['nox']][['data']])))
# Graphical functional ANOVA
nsim <- 2999
# \dontshow{
nsim <- 19
# Decrease the data to reduce time
cset$funcs <- cset$funcs[, 20:40]
Type <- Type[20:40]
# }
res.c <- graph.fanova(nsim = nsim, curve_set = cset,
groups = Type, variances = "unequal",
contrasts = TRUE)
plot(res.c) + ggplot2::labs(x = "Hour", y = "Diff.")
}
#-- Centred government expenditure centralization ratios example
# This is an example analysis of the centred GEC in Mrkvicka et al.
data("cgec")
# Number of simulations
nsim <- 2499 # increase to reduce Monte Carlo error
nsim <- 19
# Test for unequal lag 1 covariances
res.cov1 <- graph.fanova(nsim = nsim, curve_set = cgec$cgec,
groups = cgec$group,
test.equality = "cov", cov.lag = 1)
plot(res.cov1)
# Add labels
plot(res.cov1, labels = paste("Group ", 1:3, sep="")) +
ggplot2::xlab(substitute(paste(italic(i), " (", j, ")", sep=""), list(i="r", j="Year")))
# Test for equality of variances among groups
res.var <- graph.fanova(nsim = nsim, curve_set = cgec$cgec,
groups = cgec$group,
test.equality = "var")
plot(res.var)
# Test for equality of means assuming equality of variances
# a) using 'means'
res <- graph.fanova(nsim = nsim, curve_set = cgec$cgec,
groups = cgec$group,
variances = "equal", contrasts = FALSE)
plot(res)
# b) using 'contrasts'
res2 <- graph.fanova(nsim = nsim, curve_set = cgec$cgec,
groups = cgec$group,
variances = "equal", contrasts = TRUE)
plot(res2)
# Image set examples
data("imageset3")
# \dontshow{
# Cut the data to reduce time
imageset3$image_set$r <- imageset3$image_set$r[c(1:3, 52:55, 103),]
imageset3$image_set$funcs <- imageset3$image_set$funcs[c(1:3, 52:55, 103), ]
# }
res <- graph.fanova(nsim = 19, # Increase nsim for serious analysis!
curve_set = imageset3$image_set,
groups = imageset3$Group)
plot(res, what = c("obs", "lo.sign", "hi.sign"), sign.type = "col")
Run the code above in your browser using DataLab