Perform Hartley's Fmax test¶
Source: man/performHartleyFmaxTest.Rd · Help: ?performHartleyFmaxTest
Compares the maximum and minimum group residual variances using Hartley's maximum F-ratio distribution.
Usage¶
Arguments¶
model- A fitted
lmobject. data- The data frame
modelwas fitted to, orNULL, the default. The residuals and weights are read from the fit itself, andgroupfrom the rows ofdatathat hold the observations of the fit. Withoutdatait is read from the model frame ofmodel, which holds it only when it is a variable of the model under its own name (x, notlog(x)); a grouping variable the model does not use needsdata. Since 0.16.0, data that are given are matched to the observations of the fit: rows with row names of their own by name, in any order; rows that only number themselves (a tibble, a data.table, a data frame whose row names were reset) by the row numbers of the fit, or in the order of the fit when they hold one row per observation. The rows the fit dropped may be there or not. Data whose rows cannot be shown to hold the observations of the fit are refused; seetest_results. group- Name of the grouping variable.
Value¶
An object of class htest containing the Fmax statistic, number of groups, reference degrees of freedom and p-value.
Details¶
The statistic is \(F_{max}=\max_j s_j^2/\min_j s_j^2\). Under normality and equal group sizes its null distribution is the maximum F-ratio distribution for \(k\) independent mean squares with common degrees of freedom, evaluated with SuppDists::pmaxFratio(). If group sizes differ, the function warns and rounds the mean group size, then subtracts one, to obtain an approximate common integer degrees of freedom.
Supported models¶
It accepts an lm and a glm with the Gaussian family and the identity link, unweighted
or with positive weights, a fitWLS() fit and, since 0.16.0, a rank-deficient fit, which it
tests on the estimable part of its design: it gives the value of the same model fitted without the
aliased columns. It refuses a glm of another family or link, a survey::svyglm() fit, a
fit with a zero weight, a coefficient that is not finite for another reason, and data that
lack rows or variables of the fit.
It refuses a multivariate lm ("needs a model with one response"), since 0.16.0; before, it
stopped with a coercion error. An mgcv::gam() fit is tested as before 0.16.0, with penalised
smooth terms too: the test reads its residuals and does not fit it again, so it does not take them
for least-squares residuals (decision 37 of the design of the model context); since 0.16.0 its
observations are matched to the rows of data by the row names of its model frame. Before,
they were matched by position, since the residuals of a gam carry no names, and data
with the rows of the fit in another order gave a wrong value.
Which model each test accepts, and why, is set out in
test_results, under Supported models.
References¶
Hartley, H. O. (1950). The maximum F-ratio as a short-cut test for heterogeneity of variance. Biometrika, 37(3/4), 308–312.