Changes in version 0.8.2 (2026-05-16) New features - New function modcomp() for model comparison by providing a table with fit indices for lavaan model objects, information criteria, and likelihood ratio or F-test for various model objects, e.g., from the lm(), lme(), nlme(), lmer(), and glmer() function. . - New function boot.bs() for perfoming Bollen-Stine bootstrapping with incomplete data. - New function sim.lavaan() for generating simulated data from a lavaan model syntax with unstandardized and standardized parameters. - New function item.dfi() for computing simulation-based dynamic fit index cutoffs for evaluating confirmatory factor models based on multivariate normal, multivariate non-normal, likert-type, and categorical data. Minor features and improvements - The function write.result() supports result objects from the functions aov.b(), test.levene(), test.welch(). User-visible changes - Removed the option aov from the method argument in the multilevel.icc() function. - Moved the package data.table from Suggests to Imports. - Changed the default setting of the argument hypo and descript in the functions aov.b, test.levene, test.welch, test.t, test.z to FALSE. - Changed the default setting of the argument weighted in the function aov.b and test.t to TRUE. - Changed the default setting of the argument epsilon in the function aov.w to FALSE. - Removed the numerous plotting arguments from the functions aov.b, aov.w, ci.cor, ci.mean, ci.median, ci.var, ci.sd, test.levene, test.t, test.welch, amd test.z. - Renamed columns in the output of the functions aov.b, aov.w, test.levene from Df, Sum Sq, Mean Sq, F value, and Pr(>F) to df, SS, MSS, F, and p. Changes in version 0.8.1 (2026-03-06) New features - New function item.noninvar() for computing the effect size measure dMACS by Nye and Drasgow (2011) and signed dMACS by Nye et al. (2019) for evaluating the magnitude and the direction of between-group and longitudinal measurement non-invariance for continuous and ordered categorical items. - New function difftest.chibarsq() for perfoming the chi-bar-square difference test to compare the random intercept cross-lagged panel model (RI-CLPM) and traditional cross-lagged panel model (CLPM) as discussed in Hamaker et al. (2015). Minor features and improvements - Added the characters randeff and varcor to the argument print of the function summa(). - The function coef.robust() computes cluster-robust standard errors for multilevel and linear mixed-effects models estimated by using the lme() function from the nlme package. - The function summa() prints a summary of the result object returned by the function lme() from the nlme package. User-visible changes - Added the arguments write to the function write.result(). - Added the arguments horiz to the function print.misty.object(). Changes in version 0.8.0 (2026-01-18) New features - The function item.invar() evaluates between-group and longitudinal measurement invariance for measurement models with ordered categorical indicators utilizing the Wu and Estabrook (2016) approach to model identification. Minor features and improvements - The function center provides a two-step latent mean centering approach. - The summary result tables created by the function mplus.lca.summa also provides the approximate weight of evidence criterion (AWE), approximate correct model probability (cmP), approximate Bayes factors (aBF), average posterior class probability (AvePP), odds of correct classification ratio (OCC), and Cohen's d to quantify class separation. - The function mplus.lca.summa also provides class-specific item response probabilities of the indicator variables and plots for LCA with ordered or unordered categorical indicator variables. - The argument partial in the function item.invar was modified to enable freeing parameters in specific groups when evaluating between-group measurement invariance based on more than two groups. - Added the arguments boot and R for requesting (bias-corrected) bootstrap confidence intervals to the function mplus.lca. - Added the argument constr.var to impose inequality constraints for the variance parameters at the between level to the function multilevel.cor. - Added the argument lavaan.run to the function item.invar. Bug fix - Fixed a bug in the function center(), which caused an error message when centering a L2 predictor in three-level data within L3 clusters. User-visible changes - Added a horizontal line under the table header of output providing tables. - Revised the help page of the center() function. - The function multilevel.icc() rounds ICCs smaller than .Machine$double.eps^0.5 to 0. - Changed the default setting of the argument digits in the function mplus.lca.summa to 0. - Changed the default setting of the argument missing in the function item.alpha to listwise. - Rearranged the order of the arguments for the function mplus.lca, changed the default setting of the argument sort.p to FALSE, and the default setting of the argument output to c("SVALUES", "CINTERVAL", "TECH11"). - Removed the argument width in the function mplus.lca.summa()and added the arguments width.ind, width.nclass, and height.categ. - Removed the argument within in the function multilevel.cor(), i.e., the function automatically identifies variables that are measured at the within level and modeled only at the within level. Changes in version 0.7.6 (2025-10-27) User-visible changes - Renamed the function result.lca() to mplus.lca.summa(). - Changed the default setting of the argument print in the function indirect to mc. - Removed the argument between in the function multilevel.cor(), i.e., the function automatically identifies variables that are measured at the between level. Bug fix - Function item.cfa() and multilevel.cfa() adapted to the recent changes in the lavaan package (requested by Yves Rosseel). Changes in version 0.7.5 (2025-09-06) New features - New function robust.lmer() to estimate a multilevel and linear mixed-effects model based on a robust estimation method using the rlmer() function from the robustlmm package. Minor features and improvements - The function summa supports result objects from the rlmer() function from the robustlmm package. - The function summa computes confidence intervals based on heteroscedasticity-consistent standard errors when specifying robust = TRUE. - The function summa computes cluster-robust standard errors for multilevel and linear mixed-effects model when specifying robust = TRUE. - The function coeff.robust computes cluster-robust standard errors for (generalized) linear models that are robust to the violation of the observation independence due to clustering. - The function coeff.robust computes cluster-robust standard errors for multilevel and linear mixed-effects model that are robust to the violation of the homoscedasticity assumption. User-visible changes - Changed the column names of the coefficient table in the function coeff.std and coeff.robust from Std. Error, z value, t value , Pr(>|z|), and Pr(>|t|) to Std. Error, z, t , p, and p. - Changed the default setting of the argument digits in the function coeff.robust to 2. - Removed the argument adjust from the function mplus.lca.summa. Changes in version 0.7.4 (2025-08-18) New features - New function write.data() and write.data1() to write data files in CSV, DAT, TXT, SPSS, Excel, or Stata DTA format. - New functions df.long() and df.wide() to reshape data frames between 'wide' and 'long' format. - New function summa() for printing a summary output of the object returned by the functions lm() and lmer() from the lme4 package. Minor features and improvements - The function descript prints the number of unique elements nUQ after omitting missing values. - Added the arguments write, append and output to the function uniq. - Added the arguments categ and adjust to the function na.auxiliary that allows specifying categorical variables to compute Phi coefficient and Cramer's V. - Added the argument optim.switch to the function multilevel.cor. - The function multilevel.cor computes the within-group correlation (or between-group correlation) in the presence of only one between-group (or within-group) variable. - The function check.resid performs residual diagnostics for linear mixed-effects models estimated by using the lmer() function. Bug fix - Fixed a bug in the function multilevel.icc(), computation of the ICC(2) was wrong (thanks to Ammar Ansari and Tetsuhiro Yamada). User-visible changes - Changed the column name pNA to %NA in the output of the functions ci.cor, ci.mean, ci.median, ci.mean.w, ci.prop, ci.var, ci.sd, descript, item.alpha, item.cfa, item.omega, multilevel.cfa, multilevel.omega, and na.descript. - Changed the column names nObs and %Obs to nOb and %Ob in the frequency table of the na.descript() function. - Functions descript(), item.alpha(), item.cfa, item.omega(), multilevel.cfa, and multilevel.omega print the column %NA with zero digits if all variables have no missing values. - Changed the column names from SD.x and SD.y to SDx and SDyin the output of the std.coef() function. - Changed the default setting of the argument digits in the function std.coef to 2. - Changed the column name pval to p in the output of the functions aov.b, aov.w, na.test, test.t, test.welch, and test.z. - Renamed the functions robust.coef(), std.coef(), and rwg.lindell() to coeff.robust(), coeff.std() and cluster.rwg(). - Removed the . (dot) operator from the function df.subset(). Changes in version 0.7.3 (2025-07-07) Minor features and improvements - The function descript prints the percentage of observations at the minimum (%Min) and at the maximum (%Max). User-visible changes - The function multilevel.cor estimates the model without standard errors to speed up model estimation when specifying sig = FALSE (default setting). Bug fix - Fixed a bug in the function plot.misty.object() for plotting results of the na.pattern() function (thanks Teun van den Brand). Changes in version 0.7.2 (2025-05-20) New features - New function uniq for extracting unique elements in a vector, matrix, or data frame and function uniq.n for counting the number of unique elements in a vector or for each column in a matrix or data frame. Minor features and improvements - The function std.coef computes standardized coefficients for multilevel and linear mixed-effects models estimated by using the lmer or lme function from the lme4 or nlme package. - The function item.alpha computes coefficient alpha by estimating an essentially tau-equivalent measurement model allowing full information maximum likelihood (FIML) method for missing data handling by specifying missing = "fiml" along with estimator = "ML". - Added the argument rescov to the function item.alpha for specifying residual covariances when computing coefficient alpha. Bug fix - Fixed a bug in the functions item.invar(), functions did not allow specifying more than two residual covariances (thanks to Lydia Laninga-Wijnen). User-visible changes - Changed the default setting of the argument print in the functions item.alpha and item.omega to alpha and omega. - Removed the argument na.omit in the function item.omega and added the arguments estimator and missing. Changes in version 0.7.1 (2025-03-10) New features - New function plot.misty.object() for plotting a misty object. Minor features and improvements - Added the argument factor.labels to the function df.head and df.tail. - Added the arguments filename, width, height, units, and dpi to the functions aov.b, aov.w, multilevel.r2, multilevel.r2.manual, na.pattern, test.levene, test.t, test.welch, and test.z. - The function df.rename can rename columns in a matrix or variables in a data frame using old_name = new_name and using the functions toupper, tolower, gsub, and sub similar to the rename function in the dplyr package. Bug fix - Fixed a bug in the function multilevel.icc(), computation of the ICC(1) at Level 2 was wrong in case of a three-level data when specifying type = "1b" (thanks to David S. DeGarmo). - Fixed a bug in the function center(), within-cluster centering of a Level-2 predictor variable in three-level was wrong (thanks to Stefanos Mastrotheodoros). - Fixed a bug in the functions df.head() and df.tail(), function could not handle date and times. User-visible changes - The argument subset in the function df.subset is specified without quotation marks in line with the argument subset in the function subset function. - Moved the argument data in the functions as.na, na.as, center, ci.cor, ci.cor, ci.mean, ci.median, ci.mean.w, ci.var, ci.sd, cluster.scores, coding, cor.matrix, crosstab, descript, df.duplicated, df.unique, df.move, df.subset, effsize, freq, item.alpha, item.cfa, item.invar, item.omega, item.reverse, item.scores, lagged, multilevel.cfa, multilevel.cor, multilevel.descript, multilevel.icc, multilevel.invar, multilevel.omega, na.auxiliary, na.coverage, na.descript, na.indicator, na.pattern, na.prop, na.test, rec, rwg.lindell, skewness to the first position. - Renamed the argument x in the functions df.check, df.head, df.rename, df.sort to data. - Renamed the argument x in the function multilevel.fit to model. - Renamed the arguments alpha, ci.plot, plot.point, saveplot in the functions ci.cor, ci.mean, ci.median, ci.prop, ci.var, and ci.sd to hist.alpha, confint, point and filename. - Renamed the argument fill.col in the functions na.pattern to color. - Renamed the argument file in the functions blimp.plot, mplus.plot, and na.pattern to filename. - Removed the argument saveplot from the functions na.pattern. - Changed the default setting of the argument na in the functions na.indicator(), to 1. Changes in version 0.7.0 (2025-02-02) New features - New function ci.cor() for computing and potting Fisher z' confidence interval for the Pearson product-moment correlation coefficient adjusted via sample joint moments method or via approximate distribution method (Bishara et al., 2018), Spearman's rank-order correlation coefficient with Fieller et al. (1957) standard error, Bonett and Wright (2000) standard error or rank-based inverse normal (RIN) transformation, and Kendall's Tau-b, and Kendall-Stuart's Tau-c. The function also supports five types of bootstrap confidence intervals - New function chr.trunc() for truncating a character vector, so that the number of characters of each element of the character vector is always less than or equal to the specified width. - New function df.head() and df.tail() for printing the first or last rows of a data frame and displaying only as many columns as fit on the console. - New function df.check() which is a wrapper function around the functions dim(), names(), df.head(), and df.tail(). Minor features and improvements - The functions skewness and kurtosis can also compute Mardia's multivariate skewness and kurtosis. - The functions ci.mean, ci.median, ci.prop, ci.var, and ci.sd can also compute and plot bootstrap confidence intervals. - Added the argument sample to the function descript. - Added the argument append to the function check.outlier. - Added the arguments sep and dec to the function read.data. - Added the options gray1, gray2, and gray3 to the argument color of the function chr.color. Bug fix - Fixed a bug in the function blimp.print(), function printed error messages. - Fixed bugs in functions that could not handle a tibble as input (thanks to David S. DeGarmo). User-visible changes - Changed the arguments nrow, ncol and scales into facet.nrow, facet.ncol and facet.scales in the functions blimp.plot() and mplus.plot(). - Changed the argument error.width into errorbar.width in the functions aov.b(), aov.w(), result.lca(), test.t() and test.z(). - Changed the argument line.size and line.type into linewidth and linetype in the functions test.t() and test.z(). - Changed the arguments line.color1, line.color2, line.type1, line.type2, line.width1, line.width2, bar.color, axis.size, strip.size, xlimits, and ylimits into line.col1, line.col2, linetype1, linetype2, linewidth1, linewidth2, bar.col, axis.text.size, strip.text.size, xlim, and ylim in the function check.resid(). - Changed the default setting of the argument line in the functions aov.w(), to FALSE. - Merged help pages for the functions size.mean, size.prop and size.cor into one help page. - Changed the default setting of the argument missing in the functions multilevel.cfa(), to "fiml". - Changed the default setting of the argument estimator in the functions multilevel.cor(), to "MLR". - Changed the default setting of the argument na in the functions na.indicator(), to 1. Changes in version 0.6.8 (2024-10-24) New features - New functions na.satcor(), cfa.satcor(), sem.satcor(), growth.satcor(), and lavaan.satcor() to estimate a confirmatory factor analysis model, structural equation model, growth curve model, or latent variable model in the lavaan package using full information maximum likelihood (FIML) method to missing data handling while automatically specifying a saturated correlates model to incorporate auxiliary variables into a substantive model. - New function read.data() to read data files in CSV, DAT, TXT, SPSS, Excel, or Stata DTA format. User-visible changes - Changed the default setting of the argument print in the functions na.test(), to little. Bug fix - Fixed a bug in the function mplus.plot(), which caused an error message when requesting a loop plot by specifying plot = "loop". - Fixed a bug in the function mplus.print(), which caused an error message when printing a Mplus output for an automatic testing of measurement invariance. Changes in version 0.6.7 (2024-09-18) Minor features and improvements - The functions mplus and blimp do not require the ...; specification in the VARIABLES section anymore when specifying variable names with the argument data. - Added the argument labels in the function blimp.plot() to show parameter labels in the facet labels. User-visible changes - The function na.auxiliary() does not print full NA rows of the Cohen's d matrix anymore. - The function na.indicator() creates a missing data indicator matrix with 0 = observed and 1 = missing. - Added the arguments na, append and name to the function na.indicator(). Bug fix - Fixed a bug in the function mplus.print(), function did not the print input result when specifying print = "all". - Fixed a bug in the function blimp(), which caused an error message when specifying a posterior = TRUE and saving the posterior distribution failed. - Fixed a bug in the function blimp.print(), which caused an error message when specifying a misty.object for the argument x. - Fixed a bug in the function blimp.plot(), function did not save and plots regardless of the setting of the argument saveplot. Changes in version 0.6.6 (2024-08-25) New features - New function mplus.plot() to read a Mplus GH5 file to display trace plots, posterior distribution plots, autocorrelation plots, posterior predictive check plots, and loop plots. - New function blimp.run() to run a group of Blimp models located within a single directory or nested within subdirectories. - New function blimp.print() to print a Blimp output file on the R console. - New functionblimp.plot() to read the posterior distribution for all parameters to display trace plots and posterior distribution plots. - New function blimp() to create and run a Blimp input to print the output on - New function blimp.update() to update specific input command sections of a misty.object of type blimp to create an updated Blimp input file, run the updated input file, and print the updated Blimp output. - New function mplus.bayes() to read a Mplus GH5 file and blimp.bayes() to read the posterior distribution for all parameters to compute point estimates, measures of dispersion, measures of shape, credible intervals, convergence and efficiency diagnostics, probability of direction, and probability of being in the ROPE for the posterior distribution for each parameter. - The na.test function provides Jamshidian and Jalalꞌs approach for testing the missing completely at random (MCAR) assumption. - New function clear() to clear the console equivalent to Ctrl + L in RStudio. - New function chr.color() to add color and style to output texts on terminals that support 'ANSI' color and highlight codes. Minor features and improvements - Added the option default to the argument print of the descript function. - Added the argument comment to the mplus function. - The function na.test performs Little's MCAR test using the mlest function from the mvnmle package that can handle up to 50 variables instead of using the prelim.norm function in the norm package that can only handle about 30 variables. - The function na.pattern plots the missing data pattern when specifying plot = TRUE and runs faster. - The function na.auxiliary computes semi-partial correlations of an outcome variable conditional on the predictor variables of a substantive model with a set of candidate auxiliary variables to identify correlates of an incomplete outcome variable as suggested by Raykov and West (2016).. User-visible changes - Changed the default setting of the argument print in the functions mplus.print, to result. - The function mplus.print does not print the section MODEL FIT INFORMATION if the degrees of freedom is zero. - Renamed the argument run.mplus in the function mplus.lca() to mplus.run. - Changed the default setting of the argument ls.fit in the function multilevel.cfa() to FALSE. Bug fix - Fixed a bug in the function mplus.update(), which caused an error message when specifying output = FALSE. - Fixed a bug in the function mplus.lca(), which caused an error message when checking the input for the argument processors. - Fixed a bug in the functions item.cfa() and multilevel.cfa(), functions did not allow specifying more than two residual covariances (thanks to Lydia Laninga-Wijnen). - Fixed a bug in the function multilevel.descript(), average, minimum, and maximum cluster size at Level 3 were calculated incorrectly. - Fixed a bug in the function item.omega(), function did not provide item statistics regardless of the print argument setting (thanks to Ainhoa Coloma Carmona). Changes in version 0.6.5 (2024-06-29) Minor features and improvements - Updated the function mplus.run() according to the latest version of the function runModels() in the MplusAutomation package. Bug fix - Fixed a bug in the function mplus.print(), function did not print result of a misty.object of type mplus. Changes in version 0.6.4 (2024-06-26) New features - New function mplus.print() for printing a Mplus output file on the R console. - New function mplus() to create and run a Mplus input to print the output on the console. - New function update.mplus() to update specific Mplus input command sections in the mplus object, run the updated input file, and print the output on the console. - New functions chr.grep() and chr.grepl() for multiple pattern matching, i.e., grep() and grepl() functions for matching a vector of character strings. User-visible changes - The function write.mplus() is not restricted to variable names with up to 8 characters anymore. - Renamed the function run.mplus() to mplus.run(). - Changed the default setting of the argument posthoc in the functions aov.b(), aov.w() and test.welch() to FALSE. - Changed the option of the argument replace from modifiedDate to modified in the functions mplus.lca() and mplus.run(). - Changed the arguments showOutput into show.out and replaceOutfile into replace.out in the function mplus.run(). - Added the argument message to the function mplus.run(). Bug fix - Fixed a bug in the function test.welch(), function did not print post hoc tests when specifying posthoc = TRUE. Changes in version 0.6.3 (2024-05-14) Bug fix - Fixed a bug in the function result.lca(), function excluded all outputs which involved the word ERROR even though results were available (thanks to Michael Weber). - Fixed a bug in the function multilevel.fit(), function used the number of observations at the Within level instead of the Between level for computing RMSEA at the Between Level (thanks to Maurizio Sicorello). - Fixed a bug in the function descript() which caused an error message when specifying a split variable. - Fixed a bug in the function robust.coef() which caused an error message in the presence of missing data on predictor variables. - Fixed a bug in the functions multilevel.icc() and multilevel.descript() which caused an error message in when specifying a tibble instead of a data frame (thanks to Tanja Held). Minor features and improvements - In the function mplus.lca(), the argument processors allows to specify the number of processors and threads separately. - In the function item.omega(), residual covariances can be specified when type = "categ". Changes in version 0.6.2 (2024-02-05) Bug fix - Fixed a bug related to variable selection using the operators ., +, -, ~, :, ::, functions which caused an warning message. - Fixed a bug in the functions center(), multilevel.icc(), and multilevel.descript() which caused an error message in three-level data with ambiguously coded cluster variables common in longitudinal data. User-visible changes - Revised the function multilevel.descript() to take into account missing values, e.g., No. of cases and No. of clusters show the number observations and clusters after excluding missing values. - Variable attributes in the function write.sav() do not require specifying all three columns label, values, and missing anymore. Minor features and improvements - Added the argument na to the function read.mplus(). Changes in version 0.6.1 (2024-01-19) User-visible changes - Removed the Fortran implementation of the polychoric correlation coefficient because it causes problems when loading the package on Mac computers. Bug fix - Fixed a bug in the function freq(), function did not provide an output. Changes in version 0.6.0 (2024-01-12) New features - New function df.subset() for subsetting data frames using the operators ., +, -, ~, :, ::, and ! similar to functions from the R package tidyselect. - New function lagged() to compute lagged values of variables. - New function df.move() to move variable(s) in a data frame. - New functions read.dta() and write.dta() to read and write Stata DTA files. - New function coding() to code categorical variables, i.e., dummy, simple, unweighted and weighted effect, repeated, forward Helmert, reverse Helmert, and orthogonal polynomial coding. - New function effsize() to compute effect sizes for categorical variables, i.e., (adjusted) phi coefficient, (bias-corrected) Cramer's V, (bias-corrected) Tschuprow's T, (adjusted) Pearson's contingency coefficient, Cohen's w, and Fei. - New function script.copy() to save a copy of the current script in RStudio with the current date and time. Minor features and improvements - Functions as.na(), na.as()``center(), ci.mean(), ci.mean.w(), ci.median(), ci.prop(), ci.var(), ci.sd(), cluster.scores(), cor.matrix(), crosstab(), descript(), freq(), item.alpha(), item.cfa(), item.invar(), item.omega(), item.reverse(), item.scores(), multilevel.cfa(), multilevel.cor(), multilevel.descript(), multilevel.fit(), multilevel.icc(), multilevel.invar(), multilevel.omega(), na.auxiliary(), na.coverage(), na.descript(), na.indicator(), na.pattern(), na.prop(), na.test() rec(), rwg.lindell(), skewness(), and kurtosis() provide the argument ... instead of the argument x to specify variables from the data frame specified in data using the operators ., +, -, ~, :, ::. - Function multilevel.icc() computes intraclass correlation coefficients in three-level data. - Function multilevel.descript() computes multilevel descriptive statistics in three-level data. - Function center() centers predictor variables in three-level data. - Function na.descript() provides descriptive statistics for missing data in two-level and three-level data. - Function cor.matrix() computes tetrachoric and polychoric correlation coefficients. - Added the arguments write and append to all functions providing a print function to save the print output into a text file. User-visible changes - Changed the default setting of the argument names in the function rec() to .e. - Changed the default setting of the arguments label and labels in the read.sav function to FALSE. - Changed the argument value in the function na.as() to na to make it consistent with the arguments of the function as.na(). - Changed the argument resid.cov in the function item.omega() to resocv to make it consistent with the arguments of the functions item.cfa() and multilevel.cfa(). - Changed the argument names in the functions center, cluster.scores, item.reverse, and rec to name to make it consistent with the arguments of the functions item.scores(), na.prop(), and lwg.lindell(). - Changed the argument x and ... in the functions df.duplicated() and df.unique()to ... and data to make it consistent with all other functions using the ... argument. - Merged help pages for the functions as.na and na.as into one help page. - Merged help pages for the functions script.open, script.close, and script.save into one help page. - Merged help pages for the functions skewness and kurtosis into one help page. - Merged help pages for the functions ci.mean and ci.median into one help page. - Merged help pages for the functions ci.var and ci.sd into one help page. - Removed the function shift() and replaced it by the function lagged(). - Removed the function dummy.c() and replaced it by the function coding() - Removed the functions cor.phi(), cor.cont(), cor.cramer(), and eta.sq() and replaced them by the function effsize(). - Removed the function cor.poly() and integrated polychoric correlation coefficient into the function cor.matrix(). Bug fix - Fixed a bug in the function multilevel.descript(), function led to a node stack overflow. Changes in version 0.5.4 (2023-11-14) New features - New function shift() to compute lagged or leading values of a vector. Bug fix - Fixed a bug in the function libraries(), version of the packages were not correctly displayed. Changes in version 0.5.3 (2023-09-17) Bug fix - Fixed a bug in the function test.welch(), to remove errors for r-devel from a recent change in r-devel. Changes in version 0.5.2 (2023-08-24) Minor features and improvements - Added the argument group.ind to the function result.lca() to specify. latent class indicators as grouping variable in the bar charts. Changes in version 0.5.1 (2023-08-22) Minor features and improvements - Function mplus.lca() can be used to conduct latent class analysis with count, unordered categorical, and ordered categorical indicator variables. - Function result.lca() can be used to save bar charts with error bars for confidence intervals for each of the latent class solutions. Bug fix - Fixed a bug in the function dominance.manual(), function provided the wrong rank ordering. User-visible changes - Renamed the functions mplus.lpa() and results.lpa() to mplus.lca() and results.lca(). Changes in version 0.5.0 (2023-08-07) New features - New function item.invar() for evaluating configural, metric, scalar, and strict between-group or longitudinal (partial) measurement invariance. - New function robust.coef() for computing heteroscedasticity-consistent standard errors and significance values for linear models estimated by using the lm() function and generalized linear models estimated by using the glm() function. - New function dominance() for linear models estimated by using the lm() function and dominance.manual() to conduct dominance analysis based on a (model-implied) correlation matrix of the manifest or latent variables. - New function check.resid() for performing residual diagnostics to detect nonlinearity (partial residual or component-plus-residual plots), nonconstant error variance (predicted values vs. residuals plot), and non-normality of residuals (Q-Q plot and histogram with density plot). - New function mplus.lpa() for writing Mplus input files for conducting latent profile analysis based on six different variance-covariance structures. - New function result.lpa() for creating a summary result table for latent profile analysis from multiple Mplus output files within subfolders. Minor features and improvements - Added the argument order to the function multilevel.cor() to order variables in the output table so that variables specified in the argument between are shown first. - Added modification indices for parameter constraints to the function multilevel.cfa() and multilevel.invar(). - Added residual correlation matrix to the function item.cfa(), multilevel.cfa(), and multilevel.invar(). - Function write.result() can also write results based on the return object of the std.coef function. User-visible changes - Renamed the argument min.value in the function item.cfa(), multilevel.cfa(), and multilevel.invar() to mod.minval and changed the default setting to 6.63. Changes in version 0.4.12 (2023-07-08) User-visible changes - Removed the R package r2mlm from the Imports field in the DESCRIPTION due to dependencies issues. Minor features and improvements - Function multilevel.descript() can also deal with between-cluster variables by reporting means and standard deviations at the cluster level. - Added the argument print to the function multilevel.descript() to request standard deviation of the variance components. Changes in version 0.4.11 (2023-06-10) New features - New function multilevel.fit() for computing simultaneous and level-specific model fit information for a fitted multilevel model containing no cross-level constraints from the R package lavaan. - New function multilevel.cfa() for conducting multilevel confirmatory factor analysis using the R package lavaan to investigate four types of constructs, i.e., within-cluster, shared, configural, and simultaneous shared and configural cluster constructs. - New function multilevel.invar() for evaluating configural, metric, and scalar cross-level measurement invariance using multilevel confirmatory factor analysis. - New function multilevel.omega() for computing point estimate and Monte Carlo confidence interval for the multilevel composite reliability defined by Lai (2021) for a within-cluster construct, shared cluster-level construct, and configural cluster construct. Minor features and improvements - Added convergence checks to the function multilevel.cor(), e.g., warning message is printed when absolute correlations are greater than 1. - Argument cluster in the function multilevel.cor(), multilevel.descript(), and multilevel.icc() can also be specified using the variable name of the cluster variable in x. User-visible changes - Revised the output of the item.cfa() function, e.g., loglikelihood and information criteria are shown above chi-square test of model fit and label Ad Hoc changed to Scaled. Changes in version 0.4.10 (2023-05-18) Bug fix - Fixed a bug in the function multilevel.cor(), which caused an error message (thanks to Richard Janzen). Changes in version 0.4.9 (2023-05-02) New features - New function libraries() to load and attach multiple add-on packages at once. - New function check.outlier() computes statistical measures for leverage, distance, and influence for linear models estimated by using the lm() function Minor features and improvements - When using function write.result(), result tables are in line with the arguments print, tri, digits, p.digits, and icc.digits specified in the object x (thanks to Stefan Kulakow). - Function crosstab() displays marginal row-wise, column-wise, and total percentages in the output (thanks to Joachim Fritz Punter and Lisa Bucher). Note that the function now also returns the crosstable in the list element result$crosstab of the return object . User-visible changes - Revised the Value sections in the documentation of the functions. - Changed the default setting of the argument weighted in the test.t and the na.auxiliary function to FALSE in line with the recommendation by Delacre et al. (2021). - Renamed the function collin.diag() to check.collin(). Bug fix - Fixed a bug in the function read.mplus(), an error message was printed if comments in the Mplus input file contains special characters (e.g., ä, ü, ö). - Fixed a bug in the function std.coef(), the function was not applicable to predictors specified as character vector or factor. Changes in version 0.4.8 (2023-03-10) New features - New functions script.close(), script.new(), script.open(), and script.save() to close, open, and save R scripts in RStudio. - New function setsource() to set the working directory to the source file location in RStudio equivalent to using the menu item Session - Set Working Directory - To Source File Location. - New function restart() to restart the RStudio session equivalent to using the menu item Session - Restart R. - New function multilevel.r2.manual() to compute R-squared measures by Rights and Sterba (2019) for multilevel and linear mixed effects models by manually inputting parameter estimates. Minor features and improvements - Functions center(), cluster.scores(), rec(), and item.reverse() can be applied to more than one variable at once. Changes in version 0.4.7 (2023-01-06) New features - New function aov.w() for performing repeated measures analysis of variance (within-subject ANOVA) including paired-samples t-tests for multiple comparison, descriptive statistics, effect size measures, and a plot showing error bars for within-subject confidence intervals. - New function ci.mean.w() for computing difference-adjusted Cousineau-Morey within-subject confidence intervals. Minor features and improvements - Function ci.mean.diff() computes the confidence interval for the difference for an arithmetic mean in a one-sample design. - Functions aov.b(), test.t(), test.welch(), and test.z() plot difference-adjusted confidence intervals in two-sample design by default. - Added the argument jitter.height to the functions aov.b(), test.levene(), test.t(), aov.welch(), and test.z(). - Added the argument adjust to the function ci.mean(), to apply difference-adjustment for the confidence interval. User-visible changes - Function test.t() displays the confidence interval for the mean difference in the one-sample t-test. Bug fix - Fixed a bug in the function test.t(), result table provided by the function did not display the confidence interval correctly. Changes in version 0.4.6 (2022-06-08) New features - New function aov.b() for performing between-subject analysis of variance including Tukey HSD post hoc test for multiple comparison. Minor features and improvements - Function as.na() is also applicable to arrays - Added the argument plot and arguments for various graphical parameters for plotting results to the functions test.levene(), test.t(), test.welch(), and test.z(). - Added the argument write for writing results into an Excel file to the functions cor.matrix(), crosstab(), descript(), freq(), item.alpha(), item.cfa(), item.omega(), multilevel.cor(), multilevel.descript(), na.coverage(), na.descript(), and na.pattern() - Added the argument posthoc for conducting Games-Howell post hoc test for multiple comparison to the functions test.welch(). Changes in version 0.4.5 (2022-04-29) New features - New function item.cfa() for conducting confirmatory factor analysis using the R package lavaan. Minor features and improvements - Function write.result() can also write results based on the return object of the item.cfa() function. - Argument exclude of the function freq() can also be set to FALSE. User-visible changes - Revised the output of the function multilevel.cor() to make it consistent with the output of the function item.cfa(). - Changed the argument na.omit in the function multilevel.cor() to missing to make it consistent with the arguments of the function item.cfa(). - Changed the default setting of the argument estimator in the function multilevel.cor() to ML, so that full information maximum likelihood method is used for missing data handling. Bug fix - Fixed a bug in the function multilevel.cor(), function did not use Huber-White robust standard errors, but conventional standard errors when specifying estimator = "MLR". Changes in version 0.4.4 (2022-02-24) New features - New function multilevel.r2() for computing R-squared measures for multilevel and linear mixed effects models. - New function write.xlsx() for writing Excel files (.xlsx). - New function write.result() for writing results of a misty object into an Excel file. Minor features and improvements - Added mean and variance components to the output of the function multilevel.descript(). - Added the argument round to the function freq() for rounding numeric variables. User-visible changes - Added a warning message in the na.test() function when running into numerical problems. - Changed the default setting of the argument sig in the functions cor.matrix() and multilevel.cor() to FALSE. Bug fix Changes in version 0.4.3 (2021-09-30) User-visible changes - Examples added to the documentation of the collin.diag() function. Bug fix - Fixed a bug in the function print.misty.object(), function did not print the result object of the the function crosstab() correctly when requesting percentages. Changes in version 0.4.2 (2021-08-19) New features - New function multilevel.cor() for computing the within-group and between-group correlation matrix using the lavaan package. - New function na.test() for performing Little's missing completely at random (MCAR) test. - New function indirect() for computing confidence intervals for the indirect effect using the asymptotic normal method, the distribution of the product method, and the Monte Carlo method. - New function multilevel.indirect() for computing confidence intervals for the indirect effect in a 1-1-1 multilevel mediation model using the Monte Carlo method. Minor features and improvements - Function cor.matrix() highlights statistically significant correlation coefficients in boldface. - Function cor.matrix() shows the results in a table when computing a correlation coefficient for two variables. - Added test statistic (stat) and degrees of freedom (df) to the argument print in the function cor.matrix(). - Added the argument continuity for continuity correction to the function cor.matrix() for testing Spearman's rank-order correlation coefficient and Kendall's Tau-b correlation. - Substantial speed improvement for the function cor.matrix() when computing Spearman's rank-order correlation coefficient or Kendall's Tau-b correlation. User-visible changes - Changed the argument group in the functions center(), group.scores(), multilevel.descript(), multilevel.icc(), and rwg.lindell() to cluster. - Renamed the function group.scores() to cluster.scores(). Bug fix - Fixed a bug in the function cor.matrix(), function did not print sample sizes when specifying a grouping variable and using listwise deletion. Changes in version 0.4.1 (2021-06-07) Minor features and improvements - Function write.mplus() writes a Mplus input template with variables names specified in the DATA command along with the tab-delimited data file by default. User-visible changes - Removed the argument print() in the write.mplus() function. - Changed the default setting of the argument weighted in the test.welch() function into FALSE following the recommendation by Delacre et al. (2021). Bug fix - Fixed a bug in the function cohens.d(), function printed warning messages of the pt() function. - Fixed a bug in the function cohens.d(), function could not deal with more than one variable in a one-sample design. Changes in version 0.4.0 (2021-05-13) New features - New function test.t() for performing one-sample, two-sample, and paired-sample t-tests including Cohen's d effect size measure. - New function test.welch() for performing Welch's t-test including Cohen's d effect size measure and Welch's ANOVA including $\eta^2$ and $\omega^2$ effect size measures. Minor features and improvements - Added standard error of the mean to the argument print in the function descript(). - Added the arguments format, label, labels, missing to the function read.sav() to remove variable formats, variable labels, value labels, value labels for user-defined missings, and widths from attributes of the variable. - Function item.reverse() can also be applied to to items with non-integer values. - Return object of the function cor.matrix() when specifying a grouping variable comprises the combined results of both groups in the matrices. - Function read.mplus() can also deal with consecutive variables (e.g., x1-x5). - Added group and split arguments to the function cohens.d(). - Added Cohen's d effect size measure to the output of the test.z function. - Function cohens.d() computes various kinds of Cohen's d, Hedges' d, and Glass's $\Delta$ including confidence intervals, e.g., weighted and unweighted pooled standard deviation in a two-sample design, with and without controlling for the correlation between the two sets of measurement in a paired-sample design, or with and without the small-sample correction factor. User-visible changes - Renamed following functions: alpha.coef() to item.alpha(), cont.coef() to cor.cont(), cramers.v() to cor.cramer(), levenes.test() to test.levene(), mgsub() to chr.gsub(), omega.coef() to item.omega(), reverse.item() to item.reverse(), phi.coef() to cor.phi(), poly.cor() to cor.poly(), scores() to item.scores(), stromit() to chr.omit(), trim() to chr.trim(), z.test() to test.z(), - Changed the argument use in the cor.matrix() function into na.omit. - Changed the default setting of the argument method in the functions multilevel.descript() and multilevel.icc() to "lme4"; if the lme4 package is not installed, "aov" will be used. - Changed the output of the functions ci.mean.diff() and ci.mean.prop() when computing confidence intervals in two-sample designs, i.e., results are divided in two rows according to the grouping variable. - Changed the output of the functions ci.mean.diff() and ci.mean.prop() when computing confidence intervals in paired-sample designs, i.e., output reports the number of missing data pairs (nNA), instead of number of missing values for each variable separately (nNA1 and nNA2). - Changed the output of the functions descript() when specifying the argument levenes.test(), i.e., duplicated labels in the column group or variable are not shown. - Changed the functions cohens.d() into a generic function with the methods cohens.d.default() and cohens.d.formula(). - Added arguments hypo and descript to the functions test.levene() and test.z(). - Added titles to the output of the freq, descript, and crosstab function. - Changed the argument as.na in the as.na() function into na. Bug fix - Fixed a bug in the function center() which caused an error message in case of groups with only one observation when trying to apply group mean centering. - Fixed a bug in the function center() which caused an error message when trying to apply grand mean centering of a Level 1 predictor. - Fixed a bug in the function cohens.d(), an error message was printed in the between subject design whenever specifying a grouping variable with missing values. - Fixed a bug in the function cor.matrix(), which caused an error when using listwise deletion for missing data while specifying a grouping variable. - Fixed a bug in the function descript(), which caused an error message when selection only one or two argument statistical measures using the argument print. - Fixed a bug in the function freq(), where the argument split was broken. - Fixed a bug in the function test.zz(), where the alternative hypothesis was displayed wrong when specifying alternative = "greater" or alternative = "less". Changes in version 0.3.2 (2020-06-08) New features - New function collin.diag() for collinearity diagnostics including tolerance, (generalized) standard error inflation factor, (generalized) variance inflation factor, eigenvalues, conditional indices, and variance proportions for linear, generalized linear, and mixed-effects models. - New function std.coef() for computing standardized coefficients (StdX, StdY, and StdYX) for linear models estimated by using the lm() function. - New function mgsub() for multiple pattern matching and replacements, i.e., gsub() function for matching and replacing a vector of character strings. - New functions df.duplicated() and df.unique() extracting duplicated or unique rows of a matrix or data frame. Bug fix - Fixed a bug in the function read.xlsx(), default setting of the argument progress was wrong. User-visible changes - Merged all print functions to a single print function called print.misty.object(). Changes in version 0.3.1 (2020-04-25) New features - New function z.test() for performing one sample, two sample, and paired sample z-test. Bug fix - Function omega.coef() does not access internal slots of a fitted lavaan object anymore (requested by Yves Rosseel). User-visible changes - Added descriptive statistics and confidence intervals to the function levenes.test(). - Changed the output of the functions size.mean(), size.prop(), and size.cor() to include Greek letters. - Changed the argument theta in the size.mean() function into delta. Changes in version 0.3.0 (2020-04-06) New features - New functions ci.mean(), ci.mean.diff(), ci.median(), ci.prop(), ci.prop.diff(), ci.sd(), ci.var() for computing confidence interval for the arithmetic mean, the difference in arithmetic means, the median, the proportion, the difference in proportions, the variance, and the standard deviation. - New function levenes.test() for conducting Levene's test for homogeneity of variance. - New function omega.coef() for computing coefficient omega (McDonald, 1978), hierarchical omega (Kelley & Pornprasertmanit, 2016), and categorical omega (Green & Yang, 2009). - New function read.xlsx() for reading Excel files (.xlsx). Minor features and improvements - Added ordinal coefficient alpha to the function coef.alpha(). - Added Kendall-Stuart's Tau-c correlation coefficient to the function cor.matrix(). - Function as.na() can also replace user-specified values with missing values in lists. User-visible changes - Changed the argument use in the alpha.coef() function into a logical argument na.omit. - Changed the argument pval.digits in the cor.matrix() function into p.digits. - Merged print functions print.cont.coef(), print.cramers.v(), print.na.auxiliary(), print.na.coverage(), print.phi.coef(), and print.poly.cor() into print.square.matrix() Bug fix - Fixed a bug in several function, where is.vector() function was used to test if an object is a vector. Instead is.atomic() function is used to test if an object is a vector. - Fixed a bug in the function as.na(), function converted strings in data frames to factors. Changes in version 0.2.2 (2020-02-26) New features - New function trim() for removing whitespace from start and/or end of a string. Note that this function is equivalent to the function trimws() in the base package. However, the trimws() function fails to remove whitespace in some instances. Bug fix - Fixed a bug in the function cohens.d(), function returned NA for Cohen's d in within-subject design in the presence of missing values - Fixed a bug in the function alpha.coef(), function did not provide any item statistics irrespective of the argument print - Fixed a bug in the function as.na(), function always generated a warning message irrespective of the argument as.na.