Log message:
(math/Rpsych) Updated 2.3.3 to 2.3.6
Changes in psych version 2.3.6 (20230621):
Introduction:
* The psych package includes functions and data sets to do
classic and modern psychometrics and to analyze personality
and experimental psychological data sets. The psych package
has been developed as a supplement to courses in research
methods in psychology, personality research, and graduate
level psychometric theory courses. The functions are a
supplement to the text (in progress): An introduction to
psychometric theory with applications in R. The functions
are also written to further research in the
PersonalityMotivationCognition Laboratory at Northwestern
University.
* Additional functions are added sporadically.
* This news file reports changes that have been made as the
package has been developed.
* To report bugs, send email to
<mailto:revelle@northwestern.edu> using bug.report.
* Version 2.3.7 is the development release of the psych
package. It is available as a source file for Macs or PCs in
the repository at <https://personalityproject.org/r/>. The
released version on CRAN is 2.3.6 (Added June 21, 2023). The
second digit reflects the year (i.e., 2023), the third set
the month (i.e., 2.2.5 was released in May of 2022) the last
two digits of development versions reflect either an minor
change or the day of any modifications, e.g. 1.8.3.3 was the
third attempt to get 1.8.3 released. 1.7.8 was released in
August, 2017.
* To install this development version, use the command:
install.packages("psych",
repos="https://personalityproject.org/r", \
type="source").
Remember to restart R and library(psych) to make the new
version active. It is also useful to check the date of the
development package, as I will use the same version number
but change the dates (e.g., packageDate("psych")).
To do version 2.3.7:
* Suggestions are welcome, but the current list includes the
following (and has included for a long time, so lets be
patient):
* Add confirmatory clustering to ICLUST
* Get cluster scores in ICLUST  analogous to factor scores
(requested by Ben Shalet)
* Add the ability to create multiple groups in sim.irt
functions
* Find canonical loadings in lmCor
* Add omega factor extension figure option (requested by Sylia
Wilson)
* Add option to do subject density and item density plot to IRT
plot.
* add the ability to scale radar plots of raw data from min to
max, and add a scale to radar and spider plots (e.g. circular
histograms)
* add the ability to add labels to lavaan.diagram
* To help those who want to simulate a bifactor model, make it
explicit.
* Check the bias in bootstrap resampling using cor.ci
* add symmetric=TRUE to eigen calls, think about
only.values=TRUE for some cases
* Add an analysis of DIF to the irt functions (requested by
David Condon)
* Add some power functions.
* Add CIs for means and skews as an option (for describe as
well as describeBy) Requested by Aaron Wichman
* Add a function for the Meng, Rosenthal, Rubin tests for
multiple comparisons of correlations.
* Add complexity to omega solution
* Add statistic to fa to report max fa. (partly done with fm =
minrank)
* Parallize iterations for confidence intervals in omega
* Probably should drop much of the stats when doing iterations
with fa or omega
* Find unbiased cis when doing bootstrap
* Allow the choice between regression vs. correlation in esem
between X and Y sets.
* Improve documentation for esem and cosinor
* Add interbattery diagram to the structure diagram function.
* Add Krippendorf's alpha?
* Add the ability to weight factor residuals to allow WLMS
* Add the Hull method for number of factors
* Add an option for the correlation type in bestScales
(requested by Lorien Elleman).
* Change help file examples so they are cleaner for people who
example(fn)
* Make the main functions more "tidy" in terms of their output
* Add testthat functionality
* Add parse capabilities to error.bars, error.dots, spider,
etc. so that grouping variables can be specified in formula
mode. Partially done (not yet for spider)
* Possible bug in cohen.kappa confidence intervals (reported by
Marco Fornili)
* Need to add documentation to mediate/moderate/setCor for what
dfs are used and why.
* Add an n.iter option to pca (requested by Michael Wood, but I
am not sure why)
* There is a bug in bestItems for the case of no iterations and
dictionary = something
* Fix bug in fa.lookup for omega g values that are negative
* Fix bug in bestScales that does not report items if not
iterating
* Adjust stats in fa.extend to report the raw and then the
extended values
* Improve documentation for extension diagram to clarify that
it works with fa.results
* Add just check variables specified for being numeric (instead
of entire data.frame) (suggested by Fransisco Wilheim)
* Pretty up the output from mediate (perhaps make a
mediate2latex function)
* Improve the print function for bassAckwards
Still to do:
* Change examples to dontrun rather than commented out
* Need to fix bug in alpha where it finds R from cov2cor
instead of directly (reported by Karl Ove Hufthammer )
* Add the ability to get factor scores for higher order
factors (requested by Brandon Vaughn). Partly done in omega,
but there are problems associated with the entire problem of
factor scores.
* Fix a bug in alpha when finding average R (need to use cor
rather than cov2cor when treating missing data)
* Add weight option to statsBy (but the question is how to
handle missing data)
* Modify lavaan.diagram so that it handles cfa output better
* Adjust the se for correlations (in bestScales) to take into
account the pairwise count, rather than the n.obs
* Give model fit in lmCor?  what would this be?
* Improve documentation for thurstone. Would help if we had
an example of scaling.
* scoreIrt.2pl needs to be able to adjust for group
differences correctly
* Possible problem in pooled correlations for statsBy
* Think about improvements in itemLookup to show means if
desired
* Fix bug in polychoric where it doesn't handle empty cells
very well. (reported by Bj<c3><b6>rn \
B<c3><bc>denbender).
Or at least improve the documentation about why this is a
problem.
* Fix bug in mediate for multiple dependent variables
(reported by Martin Zeschke)
* scoreItem should find the mean item correlation with
na.rm=TRUE (Liz D)
* create a scoreFastBy
* improve the help menu for sim.multi and return the latent
values
* think about linking person scores to item difficulty scores
in IRT
* Left justify content in lookupItems (not sure how to do
this)
* Consider using the Jennrich approach to standard errors of
rotated loadings
* Still need to fix mediate to handle more than 1 DVs
* Possible problem with the use of try in several functions.
* Need to fix omega so that alpha is correctly calculated in
case of no general factor
* It would be nice to add an option to display confidence
intervals of correlations in error.dots
* allow omega style hierarchical structure for x (and y) in
esem
Changes in psych version 2.3.6 (20230621):
Additions:
* Added a threshold parameter to sim.hierarchical and sim.item
to allow for conversion to binary data.
* Added a n.small parameter to sim.minor to limit the number
of small factors.
* Added mean imputation to omega (for scoring scales)
* Replaced solve(r,f ) with Pinv(r)
* Added type option to mlPLot to allow for more control
* Changed setCor.diagram to lmDiagram and added the ability to
plot lm output.
* Minor tweak to extension.diagram to allow the causal arrows
to come from rather than to the extension variables.
* Added rain as an option to violin to show rain cloud plots
* Add the ability to slant labels in plots
* Added a sort option to corPlot (sorts by cluster order)
* Added RMSEA function to allow easy calculation of RMSEA
given chisq, dof, n.obs (requested by requested by Gabe
Orona)
* Added RMSEA, but not yet TFI, etc. to esem (equested by Gabe
Orona several years ago.
* Cleaned up the various sim functions so that they are better
documented.
* Allow for different rotation options in X and Y sets in esem
* Added the ability to return the true scores for subjects
when simulating structures. This will help fitting
reliability models This is now done for sim and sim.minor,
sim.hierarchical, others are in process.
* Changed a number of local functions in the form print.x to
print_x format to comply with overly aggressive R
development checks.
Bugs Fixed:
* Fixed a very rare case in describeBy for the case of two
categorical variables measuring exactly the same thing.
Added char2numeric before the by(describe,group) call.
* Fixed a bug in bestScales for the case of no items for
replications (still in progress).
* Fixed lmCor so that the degrees of freedom for the case of
use="complete" is correct.
* Dropped a redundant check in factor.scores for nonpositive
definite matrices. Pointed out by Chandler McClellan.
* scoreIrt does not work unless keys are specified for nf > 1
(reported by Andrew Olney)  not sure of the problem. What
ever it is, I think I fixed it.
* Fixed a typo in the mlr rd file for the RkR equation.
(reported by Sebastian CastroAlvarez)

Log message:
(math/Rpsych) Updated 2.2.5 to 2.3.2
Changes in psych version 2.3.2 (20230215):
Introduction:
* The psych package includes functions and data sets to do
classic and modern psychometrics and to analyze personality
and experimental psychological data sets. The psych package
has been developed as a supplement to courses in research
methods in psychology, personality research, and graduate
level psychometric theory courses. The functions are a
supplement to the text (in progress): An introduction to
psychometric theory with applications in R. The functions
are also written to further research in the
PersonalityMotivationCognition Laboratory at Northwestern
University.
* Additional functions are added sporadically.
* This news file reports changes that have been made as the
package has been developed.
* To report bugs, send email to
<mailto:revelle@northwestern.edu> using bug.report.
* Version 2.3.1 is the development release of the psych
package. It is available as a source file for Macs or PCs in
the repository at <https://personalityproject.org/r/>. The
released version on CRAN is 2.2.9 The second digit reflects
the year (i.e., 2023), the third set the month (i.e., 2.2.5
was released in May of 2022) the last two digits of
development versions reflect either an minor change or the
day of any modifications, e.g. 1.8.3.3 was the third attempt
to get 1.8.3 released. 1.7.8 was released in August, 2017.
* To install this development version, use the command:
install.packages("psych",
repos="https://personalityproject.org/r", \
type="source").
Remember to restart R and library(psych) to make the new
version active.
Additions:
* Modified alpha so that it returns a keys list rather than a
vector
* Added the smooth option to fa, fa.stats and fa.extension.
This by default had been true. Now allows users to specify
that they don't want to smooth improper correlation
matrices. Affects just the fa.stats output.
* Improved the documentation for irt.fa, and fa.extend
* Change the verbiage in omega to reflect that we are finding
sums of squared loadings rather than eigenvalues (Thanks to
Niels Waller for this point.)
* Added the percentage of items with their highest correlation
on the keyed scale (as an index of scale quality) Requested
by Asghar Minaei.
* Added the MIMS and MIMT matrices to scoreOverlap and to
scoreItems These matrices reflect the average item
correlation within and between scales (MIMS) and the average
item x scale correlation within and between scales (MIMT).
Suggested by Asghar Minaei.
* Added options to the correlations in cortest and also
improved the documentation.
* Added alpha2r to convert alpha to average r (a trivial, one
liner, but convenient sometimes)
* Added crossValidationBoot to do multiple derivations / cross
validations
* Modified factorScore so that it will give scores even in the
case of missing data. Scores are found from the mean of the
nonmissing items on a factor. To just get scores for
nonmissing subjects, specify impute="none"
* Added faReg /faRegression to make use of fa.extend to find
the regressions with dependent variables in a more
understandable output. Modified extend.diagram to draw
these as well. Although developed to use fa.extend, faReg
will also do regressions based upon factor scores from the
raw data.
* Added SAPAfy to "sapafy" data matrices. (a trivial but
useful helper function)
* Improved examples for iclust.
* Following a suggestion from Ethan Fosse, I have reversed the
direction of the arrow in ICLUST to go from the items to the
clusters. This is now the default but the old style can
still be drawn using iclust.diagram with the bottomup
parameter set to FALSE.
* Minor tweaks to corPlot allowing the fixing of trailing
zeros and the number of digits to display.
* Improved corPlotUpperLowerCi to find correlations (and Cis)
if given raw data. This improves usability, because the
naive user would expect that behavior.
* Added the show option to lowerCor so that it will just find
but not display the correlations. Defaults to TRUE.
* Added corCi and corr.test output to the objects that
error.dots can display
* Added eigenCi to find and plot the confidence intervals of
eigen values.
* Added more timings and changed the default size for bigCor
Bugs Fixed:
* Fixed scoreItems so that the delete=TRUE option actually
works. (Based upon a report by Christopher Wiese ) Also
improved the documentation about why this is needed.
* Fixed a typo in fa with the fm=alpha method. Reported by
Philipp Doebler.
* Finally fixed a bug in bestItems so that it works with raw
data.
* Fixed a very minor bug in polychoric that was throwing a
warning and now is breaking. Results do not change.
(Reported by Goran Kardum)
* Fixed cor.smooth so that if it is given raw data, it will
first find the correlations.
* Fixed minor typo in fa.Rd (thanks to Ian Buller for pointing
this out).
* Fixed crossValidation to work with subsets of variables.
* Fixed autoR to handle case of single variable when grouping.
Reported by Alex Smith and thanks to various suggestions on
stack overflow.
* Fixed scoreItems so that it will give names to unlabeled
data and keys (was breaking GAabbreviate)
* Fixed crossValidationBoot for case of multiple DVs
* Fixed reliability for the case of single item scales
* Minor improvements to cohen.d to allow easier use of
dictionary and sorting
* Fixed cor.smooth to handle covariances matrices (reported by
Douglas Otto as a problem in fa)
* Finally fixed bug in bestScales so it will handle
correlation matrices
* Fixed bestScales so it will produce a keys list ordered by
correlation for correlation input.
* Fixed a bug in cohen.kappa for weighted Kappa. Reported by
Ju, YuJeng.
* Fix a bug in bigCor that was not working for polychoric
correlations
* changed the use of the abline(h=1) in fa.parallel to draw it
for pc not for fa. Pointed out by George Harrison.
* Added lmCor as an alias to setCor. (lmCor is much more
intuitive as it is lm for correlation matrices).
To do version 2.2.9:
* Suggestions are welcome, but the current list includes the
following (and has included for a long time, so lets be
patient):
* Add confirmatory clustering to ICLUST
* Get cluster scores in ICLUST  analogous to factor scores
(requested by Ben Shalet)
* Add the ability to create multiple groups in sim.irt
functions
* Find canonical loadings in setCor
* Add omega factor extension figure option (requested by Sylia
Wilson)
* Add option to do subject density and item density plot to IRT
plot.
* add the ability to scale radar plots of raw data from min to
max, and add a scale to radar and spider plots (e.g. circular
histograms)
* add the ability to add labels to lavaan.diagram
* need to check the code in scoreIrt to make sure it is right.
* To help those who want to simulate a bifactor model, make it
explicit.
* Check the bias in bootstrap resampling using cor.ci
* add symmetric=TRUE to eigen calls, think about
only.values=TRUE for some cases
* Add an analysis of DIF to the irt functions (requested by
David Condon)
* Add some power functions.
* Add CIs for means and skews as an option (for describe as
well as describeBy) Requested by Aaron Wichman
* Fix statsBy to handle the case of NULL groups. (particularly
for the cors=TRUE option). I think I have done this.
* Add a function for the Meng, Rosenthal, Rubin tests for
multiple comparisons of correlations.
* Clean up documentation of score.irt etc. (partly done)
* Add complexity to omega solution
* Add statistic to fa to report max fa. (partly done with fm =
minrank)
* Parallize iterations for confidence intervals in omega
* Probably should drop much of the stats when doing iterations
with fa or omega
* Find unbiased cis when doing bootstrap
* Allow the choice between regression vs. correlation in esem
between X and Y sets.
* Allow for different rotation options in X and Y sets in esem,
allow omega style hierarchical structure for x (and y)
* Fix bug in esem.diagram for ability bifactor 3,3
simple=FALSE,cut=.2
* Improve documentation for esem and cosinor
* Add interbattery diagram to the structure diagram function.
* Add Krippendorf's alpha?
* Add the ability to weight factor residuals to allow WLMS
* Add the Hull method for number of factors
* Add an option for the correlation type in bestScales
(requested by Lorien Elleman).
* Change help file examples so they are cleaner for people who
example(fn)
* Make the main functions more "tidy" in terms of their output
* Add testthat functionality
* Add parse capabilities to error.bars, error.dots, spider,
etc. so that grouping variables can be specified in formula
mode. Partially done (not yet for spider)
* Possible bug in cohen.kappa confidence intervals (reported by
Marco Fornili)
* Need to add documentation to mediate/moderate/setCor for what
dfs are used and why.
* Add an n.iter option to pca (requested by Michael Wood, but I
am not sure why)
* There is a bug in bestItems for the case of no iterations and
dictionary = something
* Fix bug in fa.lookup for omega g values that are negative
* Fix bug in bestScales that does not report items if not
iterating
* Adjust stats in fa.extend to report the raw and then the
extended values
* Improve documentation for extension diagram to clarify that
it works with fa.results
* Add just check variables specified for being numeric (instead
of entire data.frame) (suggested by Fransisco Wilheim)
* Pretty up the output from mediate (perhaps make a
mediate2latex function)
* Improve the print function for bassAckwards
To do:
* Problem with scoreIrt.1pl with keys of length 2
* Change examples to dontrun rather than commented out
* Check the raw df in esem
* Add RMSEA, TFI, etc. to esem (requested by Gabe Orona )
* Clean up the various sim functions so that they are better
documented. (partly done.)
* Add formula mode to lowerCor and lowerMat (to be able to
choose a few variables in a data set) Probably not useful
* Need to fix bug in alpha where it finds R from cov2cor
instead of directly (reported by Karl Ove Hufthammer )
* Add the ability to get factor scores for higher order
factors (requested by Brandon Vaughn). Partly done in omega,
but there are problems associated with the entire problem of
factor scores.
* Fix a bug in alpha when finding average R (need to use cor
rather than cov2cor when treating missing data)
* Add weight option to statsBy (but the question is how to
handle missing data)
* Modify lavaan.diagram so that it handles cfa output better
* Fix the mediate output so that it matches the summary
* Adjust the se for correlations (in bestScales) to take into
account the pairwise count, rather than the n.obs
* Give model fit in setCor?
* Improve documentation for thurstone. Would help if we had
an example of scaling.
* scoreIrt.2pl needs to be able to adjust for group
differences correctly
* scoreIrt does not work unless keys are specified for nf > 1
(reported by Andrew Olney)
* Add the ability to return the true scores for subjects when
simulating structures. This will help fitting reliability
models This is now done for sim and sim.minor,
sim.hierarchical, others are in process.
* Possible problem in pooled correlations for statsBy
* Think about improvements in itemLookup to show means if
desired
* Fix bug in polychoric where it doesn't handle empty cells
very well. (reported by Bj<c3><b6>rn \
B<c3><bc>denbender)
* Fix bug in mediate for multiple dependent variables
(reported by Martin Zeschke)
* scoreItem should find the mean item correlation with
na.rm=TRUE (Liz D)
* create a scoreFastBy
* improve the help menu for sim.multi and return the latent
values
* think about linking person scores to item difficulty scores
in IRT
* Left justify content in lookupItems (not sure how to do
this)
* Consider using the Jennrich approach to standard errors of
rotated loadings
* Still need to fix mediate to handle more than 1 DVs
* Possible problem with the use of try in several functions.
* Need to fix omega so that alpha is correctly calculated in
case of no general factor
* It would be nice to add an option to display confidence
intervals of correlations in error.dots
Changes in psych version 2.2.12 (20221214):
Additions:
* Modified alpha so that it returns a keys list rather than a
vector
* Added the smooth option to fa, fa.stats and fa.extension.
This by default had been true. Now allows users to specify
that they don't want to smooth improper correlation
matrices. Affects just the fa.stats output.
* Improved the documentation for irt.fa, and fa.extend
* Change the verbiage in omega to reflect that we are finding
sums of squared loadings rather than eigenvalues (Thanks to
Niels Waller for this point.)
* Added the percentage of items with their highest correlation
on the keyed scale (as an index of scale quality) Requested
by Asghar Minaei.
* Added the MIMS and MIMT matrices to scoreOverlap and to
scoreItems These matrices reflect the average item
correlation within and between scales (MIMS) and the average
item x scale correlation within and between scales (MIMT).
Suggested by Asghar Minaei.
* Added options to the correlations in cortest and also
improved the documentation.
* Added crossValidationBoot to do multiple derivations / cross
validations
* Modified factorScore so that it will give scores even in the
case of missing data. Scores are found from the mean of the
nonmissing items on a factor. To just get scores for
nonmissing subjects, specify impute="none"
* Added faReg /faRegression to make use of fa.extend to find
the regressions with dependent variables in a more
understandable output. Modified extend.diagram to draw
these as well. Although developed to use fa.extend, faReg
will also do regressions based upon factor scores from the
raw data.
* Added SAPAfy to "sapafy" data matrices. (a trivial but
useful helper function)
* Added minor factors as an option to sim.congeneric.
* Improveds the documentation for sim.minor to reflect the
MacCallum paper. Improved the code so that it screens for
impossible models.
* Added/improved documentation for iclust.
* Added the order object to iclust to allow for sorting
matrices by cluster structure.
* Added a sqrt option to VSS.scree and fa.parallel output
(thanks to Marco Del Giudice for the suggestion)
* Added a coefficients object for setCor and mediate
Bugs Fixed:
* Fixed scoreItems so that the delete=TRUE option actually
works. (Based upon a report by Christopher Wiese ) Also
improved the documentation about why this is needed.
* Fixed a typo in fa with the fm=alpha method. Reported by
Philipp Doebler.
* Finally fixed a bug in bestItems so that it works with raw
data.
* Fixed a very minor bug in polychoric that was throwing a
warning and now is breaking. Results do not change.
(Reported by Goran Kardum)
* Fixed cor.smooth so that if it is given raw data, it will
first find the correlations.
* Fixed minor typo in fa.Rd (thansks to Ian Buller for
pointing this out).
* Fixed crossValidation to work with subsets of variables.
* Fixed autoR to handle case of single variable when grouping.
Reported by Alex Smith and thanks to various suggestions on
stack overflow.
* Fixed scoreItems so that it will give names to unlabeled
data and keys (was breaking GAabbreviate)
* Added the valid object to the pca function (to match the
help file.) Reported by Tomosumi Haitani)

Log message:
math/Rpsych: import Rpsych1.9.12.31
A general purpose toolbox for personality, psychometric theory and
experimental psychology. Functions are primarily for multivariate
analysis and scale construction using factor analysis, principal
component analysis, cluster analysis and reliability analysis,
although others provide basic descriptive statistics. Item Response
Theory is done using factor analysis of tetrachoric and polychoric
correlations. Functions for analyzing data at multiple levels include
within and between group statistics, including correlations and factor
analysis. Functions for simulating and testing particular item and
test structures are included. Several functions serve as a useful
front end for structural equation modeling. Graphical displays of
path diagrams, factor analysis and structural equation models are
created using basic graphics. Some of the functions are written to
support a book on psychometric theory as well as publications in
personality research. For more information, see the
personalityproject.org/r web page.
