⚠️There's a newer version (2.4.6.26) of this package.Take me there.

psych (version 2.3.9)

Procedures for Psychological, Psychometric, and Personality Research

Description

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 web page.

Copy Link

Version

Install

install.packages('psych')

Monthly Downloads

150,960

Version

2.3.9

License

GPL (>= 2)

Maintainer

Last Published

September 26th, 2023

Functions in psych (2.3.9)

ICLUST.graph

create control code for ICLUST graphical output
AUC

Decision Theory measures of specificity, sensitivity, and d prime
00.psych

A package for personality, psychometric, and psychological research
ICLUST.cluster

Function to form hierarchical cluster analysis of items
Gorsuch

Example data set from Gorsuch (1997) for an example factor extension.
Harman

Five data sets from Harman (1967). 9 cognitive variables from Holzinger and 8 emotional variables from Burt
Schmid

12 variables created by Schmid and Leiman to show the Schmid-Leiman Transformation
SD

Find the Standard deviation for a vector, matrix, or data.frame - do not return error if there are no cases
Pinv

Compute the Moore-Penrose Pseudo Inverse of a matrix
Tucker

9 Cognitive variables discussed by Tucker and Lewis (1973)
Gleser

Example data from Gleser, Cronbach and Rajaratnam (1965) to show basic principles of generalizability theory.
Garcia

Data from the sexism (protest) study of Garcia, Schmitt, Branscome, and Ellemers (2010)
ICC

Intraclass Correlations (ICC1, ICC2, ICC3 from Shrout and Fleiss)
iclust

iclust: Item Cluster Analysis -- Hierarchical cluster analysis using psychometric principles
RMSEA

Root Mean Squared Error of Approximation from chisq, df, and n
ICLUST.sort

Sort items by absolute size of cluster loadings
ICLUST.rgraph

Draw an ICLUST graph using the Rgraphviz package
Promax

Perform Procustes,bifactor, promax or targeted rotations and return the inter factor angles.
VSS

Apply the Very Simple Structure, MAP, and other criteria to determine the appropriate number of factors.
KMO

Find the Kaiser, Meyer, Olkin Measure of Sampling Adequacy
VSS.scree

Plot the successive eigen values for a scree test
bi.bars

Draw pairs of bargraphs based on two groups
bfi

25 Personality items representing 5 factors
Yule

From a two by two table, find the Yule coefficients of association, convert to phi, or tetrachoric, recreate table the table to create the Yule coefficient.
bassAckward

The Bass-Ackward factoring algorithm discussed by Goldberg
bestScales

A bootstrap aggregation function for choosing most predictive unit weighted items
alpha

Find two estimates of reliability: Cronbach's alpha and Guttman's Lambda 6.
anova.psych

Model comparison for regression, mediation, and factor analysis
VSS.plot

Plot VSS fits
VSS.parallel

Compare real and random VSS solutions
circ.tests

Apply four tests of circumplex versus simple structure
bock

Bock and Liberman (1970) data set of 1000 observations of the LSAT
Bechtoldt

Seven data sets showing a bifactor solution.
bigCor

Find large correlation matrices by stitching together smaller ones found more rapidly
cattell

12 cognitive variables from Cattell (1963)
block.random

Create a block randomized structure for n independent variables
biplot.psych

Draw biplots of factor or component scores by factor or component loadings
cluster.loadings

Find item by cluster correlations, corrected for overlap and reliability
cluster.fit

cluster Fit: fit of the cluster model to a correlation matrix
scoreOverlap

Find correlations of composite variables (corrected for overlap) from a larger matrix.
cor.wt

The sample size weighted correlation may be used in correlating aggregated data
cluster2keys

Convert a cluster vector (from e.g., kmeans) to a keys matrix suitable for scoring item clusters.
comorbidity

Convert base rates of two diagnoses and their comorbidity into phi, Yule, and tetrachorics
congruence

Matrix and profile congruences and distances
cohen.d

Find Cohen d and confidence intervals
corPlot

Create an image plot for a correlation or factor matrix
cluster.plot

Plot factor/cluster loadings and assign items to clusters by their highest loading.
cor.smooth

Smooth a non-positive definite correlation matrix to make it positive definite
cor2dist

Convert correlations to distances (necessary to do multidimensional scaling of correlation data)
corCi

Bootstrapped and normal confidence intervals for raw and composite correlations
cortest

Chi square tests of whether a single matrix is an identity matrix, or a pair of matrices are equal.
correct.cor

Find dis-attenuated correlations given correlations and reliabilities
densityBy

Create a 'violin plot' or density plot of the distribution of a set of variables
fa.poly

Deprecated Exploratory Factor analysis functions. Please use fa
corr.test

Find the correlations, sample sizes, and probability values between elements of a matrix or data.frame.
cosinor

Functions for analysis of circadian or diurnal data
corFiml

Find a Full Information Maximum Likelihood (FIML) correlation or covariance matrix from a data matrix with missing data
cortest.bartlett

Bartlett's test that a correlation matrix is an identity matrix
describeBy

Basic summary statistics by group
describe

Basic descriptive statistics useful for psychometrics
eigen.loadings

Convert eigen vectors and eigen values to the more normal (for psychologists) component loadings
pairwiseCount

Count number of pairwise cases for a data set with missing (NA) data and impute values.
ellipses

Plot data and 1 and 2 sigma correlation ellipses
dummy.code

Create dummy coded variables
draw.tetra

Draw a correlation ellipse and two normal curves to demonstrate tetrachoric correlation
diagram

Helper functions for drawing path model diagrams
Dwyer

8 cognitive variables used by Dwyer for an example.
cta

Simulate the C(ues) T(endency) A(ction) model of motivation
error.bars

Plot means and confidence intervals
error.bars.by

Plot means and confidence intervals for multiple groups
fa.parallel

Scree plots of data or correlation matrix compared to random ``parallel" matrices
fa.extension

Apply Dwyer's factor extension to find factor loadings for extended variables
error.crosses

Plot x and y error bars
errorCircles

Two way plots of means, error bars, and sample sizes
fa

Exploratory Factor analysis using MinRes (minimum residual) as well as EFA by Principal Axis, Weighted Least Squares or Maximum Likelihood
fa.lookup

A set of functions for factorial and empirical scale construction
error.dots

Show a dot.chart with error bars for different groups or variables
fa.multi

Multi level (hierarchical) factor analysis
esem

Perform and Exploratory Structural Equation Model (ESEM) by using factor extension techniques
fa.diagram

Graph factor loading matrices
fa.random

A first approximation to Random Effects Exploratory Factor Analysis
factor.residuals

R* = R- F F'
faRotations

Multiple rotations of factor loadings to find local minima
fa.sort

Sort factor analysis or principal components analysis loadings
factor.model

Find R = F F' + U2 is the basic factor model
factor.rotate

``Hand" rotate a factor loading matrix
fisherz

Transformations of r, d, and t including Fisher r to z and z to r and confidence intervals
factor.stats

Find various goodness of fit statistics for factor analysis and principal components
splitHalf

Alternative estimates of test reliabiity
factor.scores

Various ways to estimate factor scores for the factor analysis model
faCor

Correlations between two factor analysis solutions
fparse

Parse and exten formula input from a model and return the DV, IV, and associated terms.
factor.congruence

Coefficient of factor congruence
factor2cluster

Extract cluster definitions from factor loadings
irt.item.diff.rasch

Simple function to estimate item difficulties using IRT concepts
geometric.mean

Find the geometric mean of a vector or columns of a data.frame.
make.keys

Create a keys matrix for use by score.items or cluster.cor
matrix.addition

A function to add two vectors or matrices
mediate

Estimate and display direct and indirect effects of mediators and moderator in path models
glb.algebraic

Find the greatest lower bound to reliability.
factor.fit

How well does the factor model fit a correlation matrix. Part of the VSS package
harmonic.mean

Find the harmonic mean of a vector, matrix, or columns of a data.frame
p.rep

Find the probability of replication for an F, t, or r and estimate effect size
cohen.kappa

Find Cohen's kappa and weighted kappa coefficients for correlation of two raters
paired.r

Test the difference between (un)paired correlations
lowerUpper

Combine two square matrices to have a lower off diagonal for one, upper off diagonal for the other
interp.median

Find the interpolated sample median, quartiles, or specific quantiles for a vector, matrix, or data frame
irt.1p

Item Response Theory estimate of theta (ability) using a Rasch (like) model
irt.fa

Item Response Analysis by Exploratory Factor Analysis of tetrachoric/polychoric correlations
mat.sort

Sort the elements of a correlation matrix to reflect factor loadings
logistic

Logistic transform from x to p and logit transform from p to x
pairs.panels

SPLOM, histograms and correlations for a data matrix
headTail

Combine calls to head and tail
iclust.diagram

Draw an ICLUST hierarchical cluster structure diagram
mssd

Find von Neuman's Mean Square of Successive Differences
multi.hist

Multiple histograms with density and normal fits on one page
manhattan

"Manhattan" plots of correlations with a set of criteria.
irt.responses

Plot probability of multiple choice responses as a function of a latent trait
predicted.validity

Find the predicted validities of a set of scales based on item statistics
phi2tetra

Convert a phi coefficient to a tetrachoric correlation
principal

Principal components analysis (PCA)
parcels

Find miniscales (parcels) of size 2 or 3 from a set of items
scrub

A utility for basic data cleaning and recoding. Changes values outside of minimum and maximum limits to NA.
lmCor

Multiple Regression and Set Correlation from matrix or raw input
rangeCorrection

Correct correlations for restriction of range. (Thorndike Case 2)
omega

Calculate McDonald's omega estimates of general and total factor saturation
print.psych

Print and summary functions for the psych class
multilevel.reliability

Find and plot various reliability/gneralizability coefficients for multilevel data
omega.graph

Graph hierarchical factor structures
outlier

Find and graph Mahalanobis squared distances to detect outliers
sim.irt

Functions to simulate psychological/psychometric data.
phi.demo

A simple demonstration of the Pearson, phi, and polychoric corelation
polychor.matrix

Phi or Yule coefficient matrix to polychoric coefficient matrix
reliability

Reports 7 different estimates of scale reliabity including alpha, omega, split half
r.test

Tests of significance for correlations
reverse.code

Reverse the coding of selected items prior to scale analysis
scoreIrt

Find Item Response Theory (IRT) based scores for dichotomous or polytomous items
sat.act

3 Measures of ability: SATV, SATQ, ACT
rescale

Function to convert scores to ``conventional " metrics
residuals.psych

Extract residuals from various psych objects
smc

Find the Squared Multiple Correlation (SMC) of each variable with the remaining variables in a matrix
scoreItems

Score item composite scales and find Cronbach's alpha, Guttman lambda 6 and item whole correlations
sim

Functions to simulate psychological/psychometric data.
predict.psych

Prediction function for factor analysis, principal components (pca), bestScales
superMatrix

Form a super matrix from two sub matrices.
unidim

Several indices of the unidimensionality of a set of variables.
sim.item

Generate simulated data structures for circumplex, spherical, or simple structure
sim.VSS

create VSS like data
tetrachoric

Tetrachoric, polychoric, biserial and polyserial correlations from various types of input
statsBy

Find statistics (including correlations) within and between groups for basic multilevel analyses
spider

Make "radar" or "spider" plots.
sim.omega

Further functions to simulate psychological/psychometric data.
sim.structure

Create correlation matrices or data matrices with a particular measurement and structural model
schmid

Apply the Schmid Leiman transformation to a correlation matrix
structure.list

Create factor model matrices from an input list
sim.anova

Simulate a 3 way balanced ANOVA or linear model, with or without repeated measures.
sim.congeneric

Simulate a congeneric data set with or without minor factors
structure.diagram

Draw a structural equation model specified by two measurement models and a structural model
testRetest

Find various test-retest statistics, including test, person and item reliability
kaiser

Apply the Kaiser normalization when rotating factors
psych.misc

Miscellaneous helper functions for the psych package
sim.hierarchical

Create a population or sample correlation matrix, perhaps with hierarchical structure.
score.alpha

Score scales and find Cronbach's alpha as well as associated statistics
table2matrix

Convert a table with counts to a matrix or data.frame representing those counts.
mixedCor

Find correlations for mixtures of continuous, polytomous, and dichotomous variables
Tal_Or

Data set testing causal direction in presumed media influence
partial.r

Find the partial correlations for a set (x) of variables with set (y) removed.
phi

Find the phi coefficient of correlation between two dichotomous variables
plot.psych

Plotting functions for the psych package of class ``psych"
polar

Convert Cartesian factor loadings into polar coordinates
winsor

Find the Winsorized scores, means, sds or variances for a vector, matrix, or data.frame
sim.multilevel

Simulate multilevel data with specified within group and between group correlations
scaling.fits

Test the adequacy of simple choice, logistic, or Thurstonian scaling.
scatterHist

Draw a scatter plot with associated X and Y histograms, densities and correlation
score.multiple.choice

Score multiple choice items and provide basic test statistics
test.irt

A simple demonstration (and test) of various IRT scoring algorthims.
test.psych

Testing of functions in the psych package
scoreWtd

Score items using regression or correlation based weights
simulation.circ

Simulations of circumplex and simple structure
mardia

Calculate univariate or multivariate (Mardia's test) skew and kurtosis for a vector, matrix, or data.frame
thurstone

Thurstone Case V scaling
tr

Find the trace of a square matrix
withinBetween

An example of the distinction between within group and between group correlations