- Home
- CRAN
**psych**: Procedures for Psychological, Psychometric, and Personality Research**factor.rotate**: "Hand" rotate a factor loading matrix

# “Hand" rotate a factor loading matrix

### Description

Given a factor or components matrix, it is sometimes useful to do arbitrary rotations of particular pairs of variables. This supplements the much more powerful rotation package GPArotation and is meant for specific requirements to do unusual rotations.

### Usage

1 |

### Arguments

`f` |
original loading matrix or a data frame (can be output from a factor analysis function |

`angle` |
angle (in degrees!) to rotate |

`col1` |
column in factor matrix defining the first variable |

`col2` |
column in factor matrix defining the second variable |

`plot` |
plot the original (unrotated) and rotated factors |

`...` |
parameters to pass to fa.plot |

### Details

Partly meant as a demonstration of how rotation works, factor.rotate is useful for those cases that require specific rotations that are not available in more advanced packages such as GPArotation. If the plot option is set to TRUE, then the original axes are shown as dashed lines.

The rotation is in degrees counter clockwise.

### Value

the resulting rotated matrix of loadings.

### Note

For a complete rotation package, see GPArotation

### Author(s)

Maintainer: William Revelle revelle@northwestern.edu

### References

http://personality-project.org/r/book

### Examples

1 2 3 4 5 6 7 8 9 10 11 12 13 14 | ```
#using the Harman 24 mental tests, rotate the 2nd and 3rd factors 45 degrees
f4<- fa(Harman74.cor$cov,4,rotate="TRUE")
f4r45 <- factor.rotate(f4,45,2,3)
f4r90 <- factor.rotate(f4r45,45,2,3)
print(factor.congruence(f4,f4r45),digits=3) #poor congruence with original
print(factor.congruence(f4,f4r90),digits=3) #factor 2 and 3 have been exchanged and 3 flipped
#a graphic example
data(Harman23.cor)
f2 <- fa(Harman23.cor$cov,2,rotate="none")
op <- par(mfrow=c(1,2))
cluster.plot(f2,xlim=c(-1,1),ylim=c(-1,1),title="Unrotated ")
f2r <- factor.rotate(f2,-33,plot=TRUE,xlim=c(-1,1),ylim=c(-1,1),title="rotated -33 degrees")
op <- par(mfrow=c(1,1))
``` |

Want to suggest features or report bugs for rdrr.io? Use the GitHub issue tracker.

- 00.psych-package: A package for personality, psychometric, and psychological...
- ability: 16 ability items scored as correct or incorrect.
- affect: Two data sets of affect and arousal scores as a function of...
- alpha: Find two estimates of reliability: Cronbach's alpha and...
- best.scales: A set of functions for factorial and empirical scale...
- bfi: 25 Personality items representing 5 factors
- bi.bars: Draw pairs of bargraphs based on two groups
- bifactor: Seven data sets showing a bifactor solution.
- biplot.psych: Draw biplots of factor or component scores by factor or...
- block.random: Create a block randomized structure for n independent...
- blot: Bond's Logical Operations Test - BLOT
- bock.table: Bock and Liberman (1970) data set of 1000 observations of the...
- burt: 11 emotional variables from Burt (1915)
- circ.tests: Apply four tests of circumplex versus simple structure
- cities: Distances between 11 US cities
- cluster2keys: Convert a cluster vector (from e.g., kmeans) to a keys matrix...
- cluster.cor: Find correlations of composite variables (corrected for...
- cluster.fit: cluster Fit: fit of the cluster model to a correlation matrix
- cluster.loadings: Find item by cluster correlations, corrected for overlap and...
- cluster.plot: Plot factor/cluster loadings and assign items to clusters by...
- comorbidity: Convert base rates of two diagnoses and their comorbidity...
- cor2dist: Convert correlations to distances (necessary to do...
- cor.ci: Bootstrapped confidence intervals for raw and composite...
- corFiml: Find a Full Information Maximum Likelihood (FIML) correlation...
- cor.plot: Create an image plot for a correlation or factor matrix
- correct.cor: Find dis-attenuated correlations given correlations and...
- corr.test: Find the correlations, sample sizes, and probability values...
- cor.smooth: Smooth a non-positive definite correlation matrix to make it...
- cortest.bartlett: Bartlett's test that a correlation matrix is an identity...
- cortest.mat: Chi square tests of whether a single matrix is an identity...
- cor.wt: The sample size weighted correlation may be used in...
- cosinor: Functions for analysis of circadian or diurnal data
- count.pairwise: Count number of pairwise cases for a data set with missing...
- cta: Simulate the C(ues) T(endency) A(ction) model of motivation
- cubits: Galton's example of the relationship between height and...
- cushny: A data set from Cushny and Peebles (1905) on the effect of...
- densityBy: Create a 'violin plot' or density plot of the distribution of...
- describe: Basic descriptive statistics useful for psychometrics
- describe.by: Basic summary statistics by group
- df2latex: Convert a data frame, correlation matrix, or factor analysis...
- diagram: Helper functions for drawing path model diagrams
- draw.tetra: Draw a correlation ellipse and two normal curves to...
- dummy.code: Create dummy coded variables
- dwyer: 8 cognitive variables used by Dwyer for an example.
- eigen.loadings: Convert eigen vectors and eigen values to the more normal...
- ellipses: Plot data and 1 and 2 sigma correlation ellipses
- epi: Eysenck Personality Inventory (EPI) data for 3570...
- epi.bfi: 13 personality scales from the Eysenck Personality Inventory...
- error.bars: Plot means and confidence intervals
- error.bars.by: Plot means and confidence intervals for multiple groups
- error.circles: Two way plots of means, error bars, and sample sizes
- error.crosses: Plot x and y error bars
- error.dots: Show a dot.chart with error bars for different groups or...
- esem: Perform and Exploratory Structural Equation Model (ESEM) by...
- fa: Exploratory Factor analysis using MinRes (minimum residual)...
- factor2cluster: Extract cluster definitions from factor loadings
- factor.congruence: Coefficient of factor congruence
- factor.fit: How well does the factor model fit a correlation matrix. Part...
- factor.model: Find R = F F' + U2 is the basic factor model
- factor.residuals: R* = R- F F'
- factor.rotate: "Hand" rotate a factor loading matrix
- factor.scores: Various ways to estimate factor scores for the factor...
- factor.stats: Find various goodness of fit statistics for factor analysis...
- fa.diagram: Graph factor loading matrices
- fa.extension: Apply Dwyer's factor extension to find factor loadings for...
- faMulti: Multi level (hierarchical) factor analysis
- fa.parallel: Scree plots of data or correlation matrix compared to random...
- fa.sort: Sort factor analysis or principal components analysis...
- fisherz: Transformations of r including Fisher r to z and z to r and...
- galton: Galton's Mid parent child height data
- geometric.mean: Find the geometric mean of a vector or columns of a...
- glb.algebraic: Find the greatest lower bound to reliability.
- Gleser: Example data from Gleser, Cronbach and Rajaratnam (1965) to...
- Gorsuch: Example data set from Gorsuch (1997) for an example factor...
- guttman: Alternative estimates of test reliabiity
- Harman: Two data sets from Harman (1967). 9 cognitive variables from...
- Harman.5: 5 socio-economic variables from Harman (1967)
- Harman.8: Correlations of eight physical variables (from Harman, 1966)
- Harman.political: Eight political variables used by Harman (1967) as example...
- harmonic.mean: Find the harmonic mean of a vector, matrix, or columns of a...
- headtail: Combine calls to head and tail
- heights: A data.frame of the Galton (1888) height and cubit data set.
- ICC: Intraclass Correlations (ICC1, ICC2, ICC3 from Shrout and...
- ICLUST: iclust: Item Cluster Analysis - Hierarchical cluster analysis...
- ICLUST.cluster: Function to form hierarchical cluster analysis of items
- iclust.diagram: Draw an ICLUST hierarchical cluster structure diagram
- ICLUST.graph: create control code for ICLUST graphical output
- ICLUST.rgraph: Draw an ICLUST graph using the Rgraphviz package
- ICLUST.sort: Sort items by absolute size of cluster loadings
- income: US family income from US census 2008
- interp.median: Find the interpolated sample median, quartiles, or specific...
- iqitems: 16 multiple choice IQ items
- irt.fa: Item Response Analysis by Exploratory Factor Analysis of...
- irt.item.diff.rasch: Simple function to estimate item difficulties using IRT...
- irt.person.rasch: Item Response Theory estimate of theta (ability) using a...
- irt.responses: Plot probability of multiple choice responses as a function...
- kaiser: Apply the Kaiser normalization when rotating factors
- kappa: Find Cohen's kappa and weighted kappa coefficients for...
- KMO: Find the Kaiser, Meyer, Olkin Measure of Sampling Adequacy
- logistic: Logistic transform from x to p and logit transform from p to...
- lowerUpper: Combine two square matrices to have a lower off diagonal for...
- make.keys: Create a keys matrix for use by score.items or cluster.cor
- matrix.addition: A function to add two vectors or matrices
- mat.sort: Sort the elements of a correlation matrix to reflect factor...
- mediate: Estimate and display direct and indirect effects of mediators...
- misc: Miscellaneous helper functions for the psych package
- mixed.cor: Find correlations for mixtures of continuous, polytomous, and...
- msq: 75 mood items from the Motivational State Questionnaire for...
- mssd: Find von Neuman's Mean Square of Successive Differences
- multi.hist: Multiple histograms with density and normal fits on one page
- neo: NEO correlation matrix from the NEO_PI_R manual
- omega: Calculate McDonald's omega estimates of general and total...
- omega.graph: Graph hierarchical factor structures
- outlier: Find and graph Mahalanobis squared distances to detect...
- paired.r: Test the difference between (un)paired correlations
- pairs.panels: SPLOM, histograms and correlations for a data matrix
- parcels: Find miniscales (parcels) of size 2 or 3 from a set of items
- partial.r: Find the partial correlations for a set (x) of variables with...
- peas: Galton's Peas
- phi: Find the phi coefficient of correlation between two...
- phi2poly: Convert a phi coefficient to a tetrachoric correlation
- phi.demo: A simple demonstration of the Pearson, phi, and polychoric...
- plot.psych: Plotting functions for the psych package of class "psych"
- polar: Convert Cartesian factor loadings into polar coordinates
- polychor.matrix: Phi or Yule coefficient matrix to polychoric coefficient...
- predict.psych: Prediction function for factor analysis or principal...
- p.rep: Find the probability of replication for an F, t, or r and...
- principal: Principal components analysis (PCA)
- print.psych: Print and summary functions for the psych class
- Promax: Perform bifactor, promax or targeted rotations and return the...
- range.correction: Correct correlations for restriction of range. (Thorndike...
- read.clipboard: Shortcuts for reading from the clipboard or a file
- rescale: Function to convert scores to "conventional " metrics
- residuals.psych: Extract residuals from various psych objects
- reverse.code: Reverse the coding of selected items prior to scale analysis
- r.test: Tests of significance for correlations
- sat.act: 3 Measures of ability: SATV, SATQ, ACT
- scaling.fits: Test the adequacy of simple choice, logistic, or Thurstonian...
- scatter.hist: Draw a scatter plot with associated X and Y histograms,...
- schmid: Apply the Schmid Leiman transformation to a correlation...
- Schmid.Leiman: 12 variables created by Schmid and Leiman to show the...
- Schutz: The Schutz correlation matrix example from Shapiro and ten...
- score.alpha: Score scales and find Cronbach's alpha as well as associated...
- score.irt: Find Item Response Theory (IRT) based scores for dichotomous...
- score.items: Score item composite scales and find Cronbach's alpha,...
- score.multiple.choice: Score multiple choice items and provide basic test statistics
- scrub: A utility for basic data cleaning and recoding. Changes...
- SD: Find the Standard deviation for a vector, matrix, or...
- set.cor: Set Correlation and Multiple Regression from matrix or raw...
- sim: Functions to simulate psychological/psychometric data.
- sim.anova: Simulate a 3 way balanced ANOVA or linear model, with or...
- sim.congeneric: Simulate a congeneric data set
- sim.hierarchical: Create a population or sample correlation matrix, perhaps...
- sim.item: Generate simulated data structures for circumplex, spherical,...
- sim.multilevel: Simulate multilevel data with specified within group and...
- sim.structural: Create correlation matrices or data matrices with a...
- simulation.circ: Simulations of circumplex and simple structure
- sim.VSS: create VSS like data
- skew: Calculate univariate or multivariate (Mardia's test) skew and...
- smc: Find the Squared Multiple Correlation (SMC) of each variable...
- spider: Make "radar" or "spider" plots.
- statsBy: Find statistics (including correlations) within and between...
- structure.diagram: Draw a structural equation model specified by two measurement...
- structure.list: Create factor model matrices from an input list
- super.matrix: Form a super matrix from two sub matrices.
- table2matrix: Convert a table with counts to a matrix or data.frame...
- test.psych: Testing of functions in the psych package
- tetrachor: Tetrachoric, polychoric, biserial and polyserial correlations...
- thurstone: Thurstone Case V scaling
- tr: Find the trace of a square matrix
- Tucker: 9 Cognitive variables discussed by Tucker and Lewis (1973)
- vegetables: Paired comparison of preferences for 9 vegetables
- VSS: Apply the Very Simple Structure, MAP, and other criteria to...
- VSS.parallel: Compare real and random VSS solutions
- VSS.plot: Plot VSS fits
- VSS.scree: Plot the successive eigen values for a scree test
- winsor: Find the Winsorized scores, means, sds or variances for a...
- withinBetween: An example of the distinction between within group and...
- Yule: From a two by two table, find the Yule coefficients of...