Changes in version 1.8.0 - plausible_values/plausible_scores has gained an argument link_error, to include estimation/linking error in CML item parameters - plausible_values/plausible_scores no longer stalls on extremely unlikely scores, making it much faster in many cases. - special characters in item/person property names in project databases are now allowed, however they are still converted to lowercase. - Bugfix: manual interruption of long running computations no longer causes a crash. Changes in version 1.7.2 (2026-01-21) - updated for new dplyr version, no other changes Changes in version 1.7 - latent_cor can now use pairwise complete cases and gains a print and coef method for the outputted object - start_new_project_from_oplm can handle the 'expanded' oplm format and can optionally skip invalid lines - tia_tables gets mean_booklet_score and sd_booklet_score in booklet output. - tia_tables gains an optional argument omit_item_novar whether to omit items without score variation from the computation of booklet statistics Changes in version 1.6.2 (2025-06-10) - support for tidyverses .data and .env pronouns in predicates - Bugfix when person_id or booklet_id are numeric, variable in output were mangled in ability, plausible values and plausible scores. Changes in version 1.6.1 (2025-04-28) - Bugfix ability_tables did not correctly handle the design argument. This bug was introduced in version 1.6.0 - Bugfix for weird looking distractor_plot when not all booklet scores are observed. - Names for person and item properties that caused an error because they clash with SQL syntax (like 'group') are now allowed. - plot.enorm now silently returns a single data.frame (with an added column 'item_id') instead of a list of data.frames when multiple items are plotted. - When plotting multiple items with plot.enorm they can optionally be sorted by mean squared difference between the data and the model prediction. Changes in version 1.6.0 (2025-04-07) - ability and ability_tables: in case a Bayesian estimation method was used for the item parameters, argument parms_draw = "sample" now combines imputation and sampling error in the standard errors. - information, p_score and expected_score can return separate estimates for all parameter draws in case Bayesian estimation of item parameters was used. - improvement in binning for enorm fit plots - tia_tables distractor information extended with alternative-test correlation (rat), and distractors with frequency 0 added small breaking change - classnames prms (returned by fit_enorm) and rim (returned by fit_inter) have been changed to enorm and inter Changes in version 1.5.0 (2024-07-05) - bugfix in profiles(): correct domain names when different booklets don't have the same domains - improvements leading to lower autocorrelation for fit_enorm(..., method='Bayes') - plausible_scores can now return scores per item to generate complete (partially imputed) datasets Changes in version 1.4.2 (2024-04-12) - latent_cor now uses all observations for model fitting while still using only complete observations for computing the correlations - bugfix, using 'booklet_id' as a covariate in plausible_values no longer causes a crash. Changes in version 1.4.0 (2024-01-19) - update at request of cran - requires R >= 4.1 Changes in version 1.3.2 breaking changes - A small change in the interface for the plausible_values and plausible_scores functions, the slightly different argument parms_draw replaces use_draw. - The argument standard_errors in functions ability and ability_tables has been removed. Standard errors are now always returned. - argument prior.dist in plausible values has become prior_dist to maintain a consistent naming scheme in dexter. - Internal changes in the plausible values function will cause a slight increase in confidence intervals for population estimates when using multiple draws. We think this is more realistic. On the other hand, population estimates based on plausible values will now be more stable over different seeds or consecutive calls of plausible_values. Use of the same seed no longer guarantees the exact same outcomes across different computers. other changes - more graphical options in plot.prms Changes in version 1.2.2 (2022-11-08) - changed license from GPL-3 to LGPL-3 - tia_tables optionally includes statistics for distractors for MC questions - colors for distractor plots can be specified per response - updated error messages - bugfix: the confidence intervals in the fit plots for the enorm were drawn too wide for polytomous items in dexter <= 1.2.1. They are now correct. Changes in version 1.2.1 (2022-05-24) breaking change - an argument 'design' has been added to add_response_data. This obligates the user to explicitly specify the design rather than having it inferred from the data, as was the old behavior. The old behavior led to a lot of confusion, nevertheless it can be replicated by using design=distinct(x,booklet_id,item_id) as the design argument, but it is better practice to use design information from a separate source to prevent errors. other changes - adapted to comply with a change in the upcoming dplyr version. Changes in version 1.1.5 (2022-02-19) - slight change in implementation of DIF. If some items are not administered in both groups, they are now removed after calibration instead of before, making the calibration more robust in incomplete designs. - ability for EAP with normal prior is faster and SE's are more precise, argument nPV is removed - deprecated objects in result of tia_tables have now been removed. Changes in version 1.1.4 (2021-10-28) - changed sd_score for items in tia_tables() for type='averaged' to the actual sd rather than a weighted average of sd over booklets (which was the case in previous versions) - tia_tables now returns a list with data.frame elements booklets and items with snake case column names rather than elements testStats and itemStats. testStats and itemStats are also still included for the time being to not break existing code. - corrected a minor bug which caused progress bars to hang or not complete to 100% - get_resp_matrix no longer includes empty rows for missing factor levels Changes in version 1.1.3 (2021-05-08) - new website, see dexter-psychometrics.github.io/dexter - new function latent_cor which does what the name implies - speed improvement in probability_to_pass - bugfix in pobability_to_pass which occurred when not all scores were achieved Changes in version 1.1.2 (2021-01-06) - update per request from cran, no changes in functionality Changes in version 1.1.1 (2020-11-13) - profiles/profile_tables can now take a data.frame of item parameters - bugfix: mistakenly renormalized parameters when using a data.frame of polytomous item parameters Changes in version 1.0.8 (2020-06-15) - added extra argument to coef.prms to retrieve variance-covariance matrix or posterior of item parameters - bugfix: x-axis scaled incorrectly when plotting parameters for Bayesian calibration - update examples for updated cran check in 3.4 Changes in version 1.0.7 (2020-04-02) - adapting to an update in tibble Changes in version 1.0.6 (2020-03-12) - specific workarounds for (cran) solaris Changes in version 1.0.5 (2020-02-14) - Almost sure this release finally fixes the solaris issues Changes in version 1.0.4 (2020-02-06) - added systemrequirements to description in the hope that it will solve solaris issues Changes in version 1.0.3 (2020-01-14) - fixed bug that caused an error message on some apple computers when using a matrix datasource - removed unit tests for Solaris as we have no way to test on solaris, in effect this means dexter does not support solaris anymore Changes in version 1.0.2 (2019-12-11) - solved bug: accidental change of input data.frame in ability - solved bug: unnecessary error message when input parameters are data.frame Changes in version 1.0.1 (2019-11-22) - weighted likelihood estimate option in ability() and ability_tables() - added function r_score_IM() for simulation of item responses according to the interaction model - added function p_score which provides conditional score distributions - ability, plausible_values and plausible_scores accept a tidy data.frame of parameters - it is now possible to use get() in predicates - bugfix for mixed up plots in the interaction model when using a matrix dataSrc - bugfix: reinstated check for unobserved zero score categories in fit_enorm (check was accidentally removed in 1.0) - bugfix: uppercase letters in variable names in profile_plot work again Changes in version 1.0.0 (2019-08-22) Breaking changes - the interfaces for the standard setting functions have changed, these functions have new names and different arguments - the interface for probability_to_pass has changed - the name of the column 'sumScore', outputted by a number of functions, has changed to 'booklet_score' other changes - dataSrc may now also be a wide format data matrix (in addition to a database or a long format data.frame) - fit_enorm, ability and plausible_values have an extra argument 'merge_within_persons' which determines if different booklets for the same person are combined - plausible_values can use a normal or a mixture prior - the dependency on dbplyr has been removed. This again allows the use of data.frame columns in predicates (this caused error messages when using dbplyr 1.4+) - generally faster due to the excellent Rcpp and RcppArmadillo packages Changes in version 0.8.5 (2019-04-25) - new function design_info() returns extensive information about incomplete test designs. Functions design_as_network() and design_is_connected() are deprecated. - correction for a bug which caused NA's in plausible values for booklets with 1 respondent and nPV>1 Changes in version 0.8.4 (2019-01-02) - Tiny changes for compatibility with dependencies Changes in version 0.8.3 (2018-11-02) - correction of a bug in 0.8.2 which caused coef.prms to fail with calibration method Bayes Changes in version 0.8.2 (2018-10-30) - new functions information() and expected_score() for tests and items in the ENORM. - change in the algorithm for MLE estimation method in ability and ability_tables. The new algorithm is more precise so small changes in (the lower digits of) computed theta values may occur with respect to previous versions of dexter. - corrected a bug in the reporting of standard errors for Bayesian estimation of the ENORM. The SE's reported in previous versions of dexter were too high. - corrected bug in plot for DIF (item labels were reversed) introduced in 0.8.0 Changes in version 0.8.1 (2018-08-20) - significant speed increases in plausible_values, plausible_scores, ability and ability_tables - added plot method for the extended nominal response model - new function add_response_data() for importing normalized data Changes in version 0.8.0 (2018-06-10) - profiles() and profile_tables() functions added for analysis of individual deviation profiles (misfit) compared to the fitted model. - bugfix for solaris - You may want to take a look at the new sister package, dextergui Changes in version 0.7.0 (2018-05-17) - support for RSQLite release 2.1.0+ which broke dexter 0.6.0. - probability_to_pass() function added for equating to a reference test that is connected to a target test. Changes in version 0.6.0 (2017-12-16) - ability_tables() function added to generate score transformation tables for arbitrary subsets of items. ability() and ability_tables() can now also take Jeffreys prior and variations of the normal prior and can optionally output standard errors. - plausible_scores() function added to generate scores on arbitrary itemsets (or the entire bank). - Updates to documentation. Changes in version 0.5.1 (2017-10-22) - plausible_values() can now work with covariates. - fit_enorm() can optionally take fixed_parameters into account. - Significant speed increases in profile_plot, iTIA and iModels and minor speed increases in other functions. - Further includes more user control over plotting parameters, updates to documentation, several bugfixes and some smaller updates. Changes in version 0.4.4 (2017-08-22) - included Rdpack in Imports at the request of CRAN, and fixed 4 minor bugs Changes in version 0.4.2 (2017-07-18) We go straight from version 0.1.7 to version 0.4.2 in a major new release. The functionality envisaged for two other related packages, enorm and roger, has now been all incorporated into dexter. - The database has been completely rewritten. Databases created with 0.1.7 can be imported but are no longer maintained. - Many functions now support flexible subsetting of data through a predicate expression; furthermore, the data source can be either the dexter database (more usual), or a data frame or tibble. The latter can be useful in simple simulations or in some non-standard situations. - Basic test and item analysis has been extended with two interactive tools based on shiny, and with an exploratory tool to search for DIF. - Version 0.4.2 estimates the Extended NOminal Response Model (ENORM) by either CML or a Gibbs sampler, computes person scores by either MLE, EAP, or plausible values, and provides a new test for the hypothesis of no true individual differences. In addition, it supports a method for standard settings known as 3DC. - Several vignettes have been added to explain the new features in detail.