Procedures for Psychological, Psychometric, and Personality Research
Overview
A general purpose toolbox developed originally 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. Validation and cross validation of scales developed using basic machine learning algorithms are provided, as are functions for simulating and testing particular item and test structures. Several functions serve as a useful front end for structural equation modeling. Graphical displays of path diagrams, including mediation models, 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 https://personality-project.org/r/ web page.
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 functions are written to further research in the Personality-Motivation-Cognition Laboratory at Northwestern University. 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.
- 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.6.10 is the development release of the psych package. It is available as a source file for Macs or PCs in the repository at https://personality-project.org/r/. The released version on CRAN is 2.6.9 (Added September, 2026). The second digit reflects the year (i.e., 2026), the third set the month (i.e., 2.6.6 was released in June of 2026 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 the development version, use the command: install.packages("psych", repos="https://personality-project.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")). The date of the CRAN version reflects when it was submitted.
From inst/NEWS.Rd in the release
Install
Health
ERRORre-building of vignette outputsr-devel-linux-x86_64-debian-gcc
Error(s) in re-building vignettes: ... --- re-building ‘scoring.Rnw’ using knitr Quitting from scoring.Rnw:210-214 [unnamed-chunk-2] ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ cannot open the connection to 'https://personality-project.org/r/psych/HowTo/scoring.tutorial/small.msq.txt' ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Quitting from scoring.Rnw:210-214 [unnamed-chunk-2] ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ file(file, "rt") ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Error: processing vignette 'scoring.Rnw' failed with diagnostics: cannot open the connection to 'https://personality-project.org/r/psych/HowTo/scoring.tutorial/small.msq.txt' --- failed re-building ‘scoring.Rnw’ SUMMARY: processing the following file failed: ‘scoring.Rnw’ Error: Vignette re-building failed. Execution halted
- ERROR12 OK, 1 ERROR2026-10-22
- OK13 OK2026-10-03
- NOTE11 OK, 2 NOTE2026-07-16
- OK13 OK2026-05-06
- ERROR12 OK, 1 ERROR2026-05-04
Show 1 earlier changeHide 1 earlier change
- OK14 OK2026-03-10
Documentation
- Help pages
- 188includes a package overview page
- Examples that run
- 89%161 run in a plain check · 3 only when donttest examples are enabled (R CMD check --as-cran) · 5 never run · 11 hold no code
- Exported functions with examples
- 95%
- Documented parameters
- 99%
- Return-value docs
- 95%
- Help pages citing references
- 65%
Downloads
Dependencies
Installing psych adds 2 packages (1 with compiled code, 1.7 MB of source tarballs). Heaviest: GPArotation 1.6 MB, mnormt 63 KB.
Show the 48 most downloaded dependentsHide the 48 most downloaded dependents
and 166 more dependents and 94 packages that suggest it on CRAN ↗
Code & Tests
Datasets
People & History
Pick two releases to compare their code metrics.
- 2.6.9Latest
- 2.6.5
- RR 4.6.0 released · 2026-04-24
- 2.6.3
- 2.6.1
- 2.5.6
- RR 4.5.0 released · 2025-04-11
- 2.5.32025-03-21 · diff ↗
- 2.4.122024-12-23 · diff ↗
- 2.4.6.26
- RR 4.4.0 released · 2024-04-24
- 2.4.3
- 2.4.1
- 2.3.122023-12-20 · diff ↗ ·
removed 2 exports
setCor.diagram, setCorLookupadded 4 exports
cancorDiagram, corTest, esemDiagram, lmCor.diagram - 2.3.92023-09-26 · diff ↗
- 2.3.6
Show 107 earlier eventsHide 107 earlier events
- RR 4.3.0 released · 2023-04-21
- 2.3.3
- 2.2.92022-09-29 · diff ↗ ·
added 6 exports
alpha2r, crossValidationBoot, faRegression, faReg, matMult, SAPAfy - 2.2.5
- RR 4.2.0 released · 2022-04-22
- 2.2.32022-03-19 · diff ↗ ·
added 9 exports
bigCor, cohen.profile, congruence, distance, faRotations, m2d, pairwiseCountBig, scoreBy, superCor - 2.1.9
- 2.1.62021-06-18 · diff ↗ ·
added 7 exports
d2OVL, d2OVL2, d2CL, d2U3, makePositiveKeys, plot.reliability, reliability - RR 4.1.0 released · 2021-05-18
- 2.1.3
- 2.0.12
- 2.0.92020-10-05 · diff ↗
- 2.0.8
- 2.0.72020-07-26 · diff ↗ ·
added 10 exports
nchar2numeric, crossValidation, multi.curved.arrow, multi.rect, multi.arrow, multi.self, lookupItems, matPlot, responseFrequency, violin - RR 4.0.0 released · 2020-04-24
- 1.9.12.31
- 1.9.122019-12-20 · diff ↗ ·
removed 22 exports
cor2latex, df2latex, dfOrder, fa2latex, fileCreate, filesInfo, filesList, fileScan, ICC2latex, irt2latex, omega2latex, read.clipboard, read.clipboard.csv, read.clipboard.fwf, read.clipboard.tab, read.clipboard.lower, read.clipboard.upper, read.file, read.file.csv, read.https, write.file, write.file.csvadded 8 exports
faRotate, lookupFromKeys, make.irt.stats, pairwisePlot, Pinv, scoreWtd, sim.bonds, TargetT - RR 3.6.0 released · 2019-04-26
- 1.8.122019-01-13 · diff ↗ ·
added 7 exports
bassAckward, bassAckward.diagram, extension.diagram, faCor, fparse, manhattan, matSort - 1.8.102018-10-31 · diff ↗ ·
added 9 exports
d.robust, directSl, m2t, omegaDirect, pairwiseCount, pairwiseImpute, pairwiseReport, Procrustes, scoreVeryFast - 1.8.4
- RR 3.5.0 released · 2018-04-23
- 1.8.3.32018-03-30 · diff ↗ ·
added 8 exports
alpha.ci, AUC, describeFast, fileCreate, filesInfo, filesList, fileScan, testRetest - 1.7.82017-09-09 · diff ↗ ·
added 12 exports
cohen.d, cohen.d.ci, cohen.d.by, corPlotUpperLowerCi, d.ci, d2t, fa.random, fa.sapa, selectFromKeys, sem.diagram, sem.graph, t2d - 1.7.5
- RR 3.4.0 released · 2017-04-21
- 1.7.3.212017-03-22 · diff ↗ ·
added 9 exports
autoR, multilevel.reliability, mlr, mlArrange, mlPlot, r2c, scatterHist, sim.multi, unidim - 1.6.12
- 1.6.92016-09-17 · diff ↗ ·
added 19 exports
chi2r, cor2, error.dots, esem, esem.diagram, g2r, keys.lookup, keys2list, levels2numeric, read.file, read.file.csv, r2chi, scoreFast, scoreIrt, scoreIrt.1pl, scoreIrt.2pl, t2r, write.file, write.file.csv - 1.6.6
- 1.6.4
- RR 3.3.0 released · 2016-05-03
- 1.5.82015-08-30 · diff ↗
- 1.5.6
- 1.5.42015-04-27 · diff ↗ ·
removed 2 exports
best.items, best.scalesadded 10 exports
bestItems, bestScales, circadian.phase, cosinor.plot, circadian.reliability, circadian.sd, circadian.F, circadian.stats, cta.15, sim.correlation - RR 3.2.0 released · 2015-04-16
- 1.5.12015-01-21 · diff ↗ ·
added 6 exports
mediate, mediate.diagram, setCor, setCor.diagram, YuleCor, YuleBonett - 1.4.8.112014-08-12 · diff ↗
- 1.4.82014-08-11 · diff ↗ ·
added 11 exports
draw.cor, equamax, faBy, het.diagram, histBy, outlier, polydi, read.https, scoreOverlap, varimin, vgQ.varimin - 1.4.5
- 1.4.42014-04-14 · diff ↗
- RR 3.1.0 released · 2014-04-10
- 1.4.32014-03-25 · diff ↗ ·
added 6 exports
best.scales, densityBy, fa.organize, item.lookup, nfactors, violinBy - 1.4.2.32014-02-04 · diff ↗
- 1.4.22014-02-03 · diff ↗ ·
added 5 exports
cor.smoother, fa.congruence, fa.stats, fa.lookup, pairwiseDescribe - 1.4.12014-01-20 · diff ↗ ·
added 7 exports
best.items, describeData, ICC2latex, lookup, omega2latex, scoreItems, tableF - 1.3.12
- 1.3.10.122013-10-14 · diff ↗
- 1.3.102013-10-07 · diff ↗ ·
added 8 exports
cor.ci, iclust.sort, phi2tetra, shannon, sim.spherical, sim.poly.mat, test.all, Yule2tetra - RR 3.0.0 released · 2013-04-03
- 1.3.22013-02-26 · diff ↗
- 1.2.122013-01-20 · diff ↗ ·
added 11 exports
cor2latex, d2r, fa.extend, fa2irt, fa2latex, irt2latex, KMO, mssd, reflect, r2d, rmssd - 1.2.82012-09-21 · diff ↗ ·
added 13 exports
cor.wt, describeBy, errorCircles, fa.plot, headTail, irt.responses, lowerUpper, sim.multilevel, statsBy, statsBy.boot, statsBy.boot.summary, superMatrix, topBottom - 1.2.42012-09-17 · diff ↗ ·
removed 4 exports
lower.mat, panel.lm, panel.cor, panel.cor.scaleadded 5 exports
circular.mean, circular.cor, fa.rgraph, lowerCor, lowerMat - RR 2.15.0 released · 2012-03-30
- 1.2.12012-02-16 · diff ↗ ·
added 9 exports
lower.mat, plot.residuals, progressBar, psych.misc, residuals.psych, resid.psych, sim.poly.ideal, sim.poly.ideal.npl, sim.poly.ideal.npn - 1.1.11112011-11-15 · diff ↗
- 1.1.12
- 1.1.112011-11-02 · diff ↗
- RR 2.14.0 released · 2011-10-31
- 1.1.102011-10-17 · diff ↗ ·
removed 1 export
make.structuraladded 25 exports
bifactor, biquartimin, cor2dist, cor.smooth, corr.p, df2latex, dia.cone, dummy.code, irt.stats.like, irt.tau, kaiser, keysort, parcels, radar, rangeCorrection, score.irt, score.irt.2, score.irt.poly, sim.poly, sim.poly.npl, sim.poly.npn, spider, TargetQ, vgQ.bimin, vgQ.targetQ - 1.0-982011-06-09 · diff ↗
- 1.0-972011-05-15 · diff ↗ ·
added 6 exports
fa.parallel.poly, fac, fa.poly, omegah, plot.poly.parallel, set.cor - RR 2.13.0 released · 2011-04-13
- 1.0-962011-04-06 · diff ↗
- 1.0-95
- 1.0-942011-01-09 · diff ↗
- 1.0-932010-12-23 · diff ↗ ·
added 7 exports
biplot.psych, bi.bars, irt.select, lavaan.diagram, mardia, mixed.cor, predict.psych - RR 2.12.0 released · 2010-10-15
- 1.0-922010-09-22 · diff ↗
- 1.0-912010-09-15 · diff ↗ ·
removed 2 exports
omega.sem, tetrachoradded 14 exports
biserial, draw.tetra, iclust, irt.fa, omegaSem, omegaFromSem, plot.irt, plot.poly, polychoric, polyserial, response.frequencies, scrub, tetrachoric, vss - 1.0-90
- 1.0-89
- 1.0-88
- RR 2.11.0 released · 2010-04-22
- 1.0-872010-04-06 · diff ↗ ·
added 15 exports
cohen.kappa, glb.algebraic, glb.fa, logit, logistic, logistic.grm, minkowski, read.clipboard.fwf, reverse.code, sim.parallel, sim.rasch, sim.irt, sim.npl, sim.npn, tetrachor - 1.0-85
- 1.0-832009-10-26 · diff ↗
- RR 2.10.0 released · 2009-10-26
- 1.0-812009-10-05 · diff ↗
- 1.0-802009-09-30 · diff ↗ ·
added 14 exports
dia.rect, dia.ellipse, dia.ellipse1, dia.arrow, dia.curve, dia.self, fa.diagram, fa.sort, iclust.diagram, omega.diagram, structure.diagram, winsor.mean, winsor.sd, winsor.var - 1.0-782009-07-30 · diff ↗
- 1.0-772009-07-27 · diff ↗
- 1.0-762009-07-18 · diff ↗
- 1.0-752009-07-01 · diff ↗
- 1.0-74
- 1.0-72
- 1.0-702009-05-25 · diff ↗ ·
added 6 exports
cor.plot, factor.minres, factor.stats, sim.anova, sim.simplex, target.rot - RR 2.9.0 released · 2009-04-17
- 1.0-67
- 1.0-65
- 1.0-632009-01-25 · diff ↗ ·
added 6 exports
factor.plot, omega.sem, Promax, phi.list, structure.list, structure.sem - 1.0-622009-01-05 · diff ↗
- 1.0-612009-01-05 · diff ↗ ·
removed 4 exports
bartlett.cortest, jennrich.cortest, mat.cortest, normal.cortestadded 22 exports
circadian.cor, circadian.linear.cor, circadian.mean, cortest, cortest.bartlett, cortest.jennrich, cortest.mat, cortest.normal, cosinor, make.congeneric, make.structural, sim, sim.circ, simulation.circ, sim.congeneric, sim.dichot, sim.item, sim.structural, sim.hierarchical, sim.VSS, super.matrix, structure.graph - RR 2.8.0 released · 2008-10-20
- 1.0-582008-09-10 · diff ↗ ·
added 7 exports
glb, guttman, partial.r, plot.psych, print.psych, summary.psych, tenberge - 1.0-512008-07-12 · diff ↗ ·
added 18 exports
bartlett.cortest, cluster2keys, comorbidity, ICC, jennrich.cortest, wkappa, make.keys, mat.cortest, normal.cortest, read.clipboard.lower, read.clipboard.upper, scaling.fits, SD, smc, thurstone, tr, VSS.sim, winsor.means - RR 2.7.0 released · 2008-04-22
- 1.0-422008-03-24 · diff ↗ ·
removed 2 exports
polychor.matrix, psycho.demoadded 33 exports
circ.sim.plot, ellipses, error.bars.by, fisherz2r, headtail, interp.median, interp.quantiles, interp.q, interp.quart, interp.quartiles, interp.values, interp.boxplot, interp.qplot.by, panel.lm, panel.hist.density, panel.hist, panel.cor, panel.cor.scale, phi2poly.matrix, phi.demo, rescale, r.con, r.test, r2t, table2df, table2matrix, Yule, Yule.inv, Yule2phi, Yule2phi.matrix and 3 more - 1.0-332007-10-11 · diff ↗ ·
added 9 exports
cluster.plot, error.bars, item.dichot, polar, p.rep, p.rep.f, p.rep.r, p.rep.t, score.multiple.choice - RR 2.6.0 released · 2007-10-03
- 1.0-27
- 1.0-252007-06-04 · diff ↗
- 1.0-232007-05-29 · diff ↗ ·
added 8 exports
congeneric.sim, fa.parallel, fa.graph, ICLUST.rgraph, item.sim, omega.graph, poly.mat, test.psych - 1.0-18
- 1.0-172007-05-06
- RR 2.5.0 released · 2007-04-24
Package metadata
- First published
- 2007-05-06
- Total releases
- 98 / 19 yrs
- License
- GPL (>= 2) OSI
- Bundled data
- 84 KB / 30 files
- Download size
- 1.1 MB
Cite
Cite this package
Run in R for the authors' entry:
citation("psych")The package provides a citation file, so citation() returns the authors' own entry.
Cite the R Observatory
For a number measured here: a download total, a coverage figure, an archival date.
From data release v2026-10-22, which the citation names so these numbers can be found later. More on citing and the projects behind them.