The psych package for personality and psychological research

User manual and help files

  1. The psych user manual (pdf)
  2. The help files for the psych and psychTools packages in html


These are brief tutorials for the various parts of the psych package.
  1. An introduction (part 1) (pdf) to the psych package
  2. An Introduction and overview of psychometric functions (part 2) (pdf) in the psych package
  3. Finding the omega coefficients (pdf) using the psych package
  4. Using psych as a front end for sem (pdf) to the psych package

How to

  1. Install R and psych on your computer.
  2. Score a set of items to use psych in order to find composite scores
  3. Factor analyze a data set
  4. Use psych in order to find omega
  5. Use psych for regression, mediation and moderation

Short Course lecture notes

These are clickable pdf lecture notes

  1. ISSID, July 2023 slides
  2. APA July, 2017, (notes)
  3. SAMR April, 2017, (notes)
  4. APS May, 2017, (notes)
  5. WCP, March, 2013 (notes)
  6. ARP, June, 2011 (notes)

Supplementary readings

Gathered from around the web

  • Resources for R (from Sara Weston)
  • Sara Weston and Debbie Yee (2017) Why you should become a UseR: A brief introduction R

    The psych and psychTools packages may be thought of as a "Swiss Army knife" for psychological research. Not the best tool for specific tasks, but useful for many tasks. Among the more than 500 functions, there are convenient ways of reading data from the clipboard, local or remote files; for finding and plotting descriptive statistics; multiple ways of finding and displaying correlations; for factor analysis, cluster analysis and principal components analysis; finding multiple estimates of reliability, both internal consistency and test retest; doing linear regression from correlation matrices; scale construction for single or multiple scales and much more.

    psych has been developed at the Personality, Motivation and Cognition laboratory in the Department of Psychology at Northwestern University since 2005 to include functions most useful for personality, psychometric, and psychological research. The package is also meant to supplement a text on Psychometric Theory, a draft of which is available on line.

    psych is written in R which is a very powerful open source system for statistical computation and graphics. R consists of a language plus a run-time environment with graphics, a debugger, access to certain system functions, and the ability to run programs stored in script files. Base R is a foundation upon which more than 19,750 "packages" have been built. It is the use of these packages that makes R such a powerful tool for research.

    The development of the psych package was done in conjunction with the development of the Synthetic Aperture Personality Assessment (SAPA) project and is a core part of the International Cognitive Ability Resource (ICAR) project. The SAPA project includes a personality test that uses a massively missing at random strategy to measure dimensions of temperament, ability, and interests.

    To start using the psych package, it is, of course, necessary to install R and the psych package. Then one should read the Introduction and overview for psychometrics vignettes about psych and work through those examples. In addition, vignettes have been written for basic scale construction, factor analysis, principal components analysis, and cluster analysis , finding the various reliability estimates of omega_h, alpha, and omega_t, as well as regression and mediation analysis from raw data as well as from correlation matrices. There are several short courses demonstrating R as used for psychology. These are large files. Alternatively, the R guide might provide a good start.

    Reporting bugs in the psych package

  • Although I try to make the psych package easy to use and bug free, this is impossible. If you discover a bug, please report it revelle @ .
  • Please report the version number of R and of psych, and a minimal example of the problem. If possible, include an Rds file containing the offending data and the code you used when you found the bug.
  • If you have problems understanding how to use a function, please first refer to the help file for that function, look at the examples, and read the notes. Reading the vignettes is also useful.