superanova()
magrittr
, ggplot2
, and backports
dependenciesrlang::with_handlers
+ rlang::calling
to the simpler rlang::try_fetch
ggplot2::autoplot
, pillar::tbl_sum
) with current version (on devel build)coursekata
package). This removes some of the messages that spout when the coursekata
package loads.generate_models()
would only print the comparison models for type III SS.Fingers
data in examples and tests as it may be removed in the near futurefactor()
in it (e.g. lm(mpg ~ factor(cyl) * hp, data = mtcars)
) would result in an incorrect df (and related values) in the ANOVA table.superanova()
as it was just an alias to supernova()
(which was confusing for some students)deparse(model$call)
results in a vector of length greater than 1) would break the functionality of listwise_delete()
generate_models()
to look clean and comprehensible in Jupyter Notebooks.pairwise()
so that the plot matches the table.pairwise()
would not recognize categorical variables if they were created by using
factor()
in the formula, e.g. pairwise(lm(mpg ~ factor(cyl), data = mtcars))
.supernova()
output was interpreted as a table.estimate-extraction
functions to coursekata
.supernova-vctrs
from exportslintr
causing R CMD CHECK
to failFingers$Interest
to "Very Interested"pillar
is available (thanks @cedricbatailler)There are four new pairwise comparisons functions:
pairwise()
pairwise_t()
pairwise_bonferroni()
pairwise_tukey()
Each of these determines all the pairwise comparisons that can be made for a model (fit by lm()
) and then computes the comparisons. For pairwise_t()
no correction is made for multiple comparisons, but for the others, the named correction is made. These corrections can also be specified as arguments to the pairwise()
wrapper function. Each function produces output that has customized printing, supports most (if not all) normal data frame actions, and a plotting function that graphs the mean differences and their confidence intervals.
lme4
is moved to Suggests. Models implementing lmerMod
are handled via supernova.lmerMod
and variables.lmerMod
but use of the lme4
package is limited to tests.variables()
using the new formula utility functions added. See ?formula_building
, ?formula_expansion
, and ?formula_extraction
.equation()
to extract the fitted equation from a linear model (lm()
) (thanks for the suggestion from @ave-63!)dplyr
because it changes too quickly and has too many other dependencieslme4
Extend supernova to handle within (crossed) designs
lme4
and dplyr
to Importssupernova
to S3 class with methods for lm
and lmerMod
supernova()
for crossed (but not nested) lmer()
fitsprint.supernova
to handle new modelsMinor changes:
Added a NEWS.md
file to track changes to the package.
Created and added a logo to the package. (#21, @adamblake)
Added the ability to change the type of sums of squares to calculate when computing the ANOVA tables. Users can choose from 1/I/sequential, 2/II/hierarchical, 3/III/orthogonal. (#22, @adamblake)
Added pedagogical function generate_models()
for showing which models are being compared when evaluating terms in a model. This function also supports specification of the type of sums of squares to use. (#22, @adamblake)
Updated the README to be generated from an Rmd file and to include information and examples regarding how to calculate different SS types and how to use generate_models()
Added a data frame identical to Servers named Tables. This is a more appropriate name for the dataset because each row describes what happened at a table in the restaurant.
Added support for multiple regression using Type III sums of squares
Updated README for more information, examples, and a description of how the calculation of the ANOVA tables follows the model comparison approach used in Judd, McClelland, & Ryan (2017).
This version of supernova is the original distributed on CRAN. Calculation of supernova() tables with multiple predictor variables in this version will not produce output similar to the reference text, Judd, McClelland, and Ryan. However, the values for single predictor models are correct.