frank.fanova {GET} | R Documentation |
Rank envelope F-test
Description
A one-way functional ANOVA based on the rank envelope applied to F values
Usage
frank.fanova(
nsim,
curve_set,
groups,
variances = "equal",
test.equality = c("mean", "var", "cov"),
cov.lag = 1,
savefuns = FALSE,
...
)
Arguments
nsim |
The number of random permutations. |
curve_set |
The original data (an array of functions) provided as a
|
groups |
The original groups (a factor vector representing the assignment to groups). |
variances |
Either "equal" or "unequal". If "equal", then the traditional F-values are used.
If "unequal", then the corrected F-values are used. The current implementation uses
|
test.equality |
A character with possible values
If
where
See Mrkvicka et al. (2020) for more details. |
cov.lag |
The lag of the covariance for testing the equality of covariances,
see |
savefuns |
Logical. If TRUE, then the functions from permutations are saved to the attribute simfuns. |
... |
Additional parameters to be passed to |
Details
The test assumes that there are groups which contain
functions
.
The functions should be given in the argument x, and the groups in the argument groups.
The test assumes that there exists non random functions
and
such that
where are independent and normally distributed.
The test vector is
where stands for the F-statistic. The simulations are performed by
permuting the test functions. Further details can be found in Mrkvička et al. (2020).
The argument variances="equal"
means that equal variances across groups are assumed.
The correction for unequal variances can be done by using the corrected F-statistic
(option variances="unequal"
).
Unfortunately this test is not able to detect which groups are different from each other.
References
Mrkvička, T., Myllymäki, M., Jilek, M. and Hahn, U. (2020) A one-way ANOVA test for functional data with graphical interpretation. Kybernetika 56 (3), 432-458. doi: 10.14736/kyb-2020-3-0432
See Also
graph.fanova
Examples
data("rimov")
groups <- factor(c(rep(1, times=12), rep(2, times=12), rep(3, times=12)))
res <- frank.fanova(nsim = 2499, curve_set = rimov, groups = groups)
plot(res)
data("imageset3")
res2 <- frank.fanova(nsim = 19, # Increase nsim for serious analysis!
curve_set = imageset3$image_set,
groups = imageset3$Group)
plot(res2)
plot(res2, fixedscales=FALSE)