superanova()magrittr, ggplot2, and
backports dependenciesrlang::with_handlers +
rlang::calling to the simpler
rlang::try_fetchggplot2::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 dependencieslme4Extend supernova to handle within (crossed) designs
lme4 and dplyr to Importssupernova to S3 class with methods for
lm and lmerModsupernova() 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.