Uses principal components analysis and the Tracy-Widom statistic to find the number of significant principal components to represent a set of variables (M. Malosetti & J.T.N.M. Thissen).
Options
PRINT = string tokens |
What to print (summary , scores ); default summ |
---|---|
NROOTS = scalar |
Number of principal components to retain; default saves the significant components |
PLOT = string tokens |
What to plot (eigenvalues , %variance ); default eige , %var |
PROBABILITY = scalar |
Specifies the significance level; default 0.05 |
SCALING = string token |
Whether to scale the principal component scores by the square roots of their singular values (singularvalues , none ); default none |
STANDARDIZE = string token |
How to standardize the DATA variates (frequency , none ); default freq |
TITLE = text |
General title for the plots |
Parameters
DATA = pointers |
Data variates; must be set |
---|---|
SCORES = pointers |
Pointer of variates to store the scores of the significant axes for each set of DATA variates |
EVALUES = variates |
Saves the eigenvalues of the significant principal components |
NEFFECTIVE = scalars |
Saves the effective number of columns of the marker data matrix |
%VARIANCE = variates |
Saves the percentage variances explained by the significant principal components |
CUM%VARIANCE = variates |
Saves the cumulative percentage variances explained by the significant principal components |
Description
QEIGENANALYSIS
performs a principal component analysis on a set of variables, supplied by the DATA
parameter, and determines the number of significant components according to the significance level specified by the PROBABILITY
option (default 0.05). You can set the number of principal component axes to retain by using the NROOTS
option; if this is unset, the significant components are saved. By default the variates are standardized before doing the analysis, but you can set option STANDARDIZE=none
to suppress this. The scores of the significant principal components can be saved, in a pointer of variates, using the SCORES
parameter. You can set option SCALING=singularvalues
to scale the scores by the square roots of their singular values; by default they are not scaled.
The PRINT
option controls printed output, with settings:
summary |
to print the Tracy-Widom statistics of the significant principal components, |
---|---|
scores |
to print the scores of the significant principal components. |
The default is PRINT=summary
.
The PLOT
option selects the graphs to plot, with settings:
eigenvalues |
plots eigenvalues against the number of principal components, and |
---|---|
%variance |
plots the percentage variance explained and cumulative percentage variance explained, against the number of principal components. |
The default is to plot both graphs. The TITLE
option can supply a title for the graphs.
The EVALUES
parameter can be used to save the eigenvalues, and the %VARIANCE
and CUM%VARIANCE
parameters can save the percentage variances and cumulative percentage variances explained by the significant principal components. The NEFFECTIVE
parameter can save the effective number of columns of the marker data matrix, estimated as described by Patterson et al. (2006).
Options: PRINT
, NROOTS
, PLOT
, PROBABILITY
, SCALING
, STANDARDIZE
, TITLE
.
Parameters: DATA
, SCORES
, EVALUES
, NEFFECTIVE
, %VARIANCE
, CUM%VARIANCE
.
Method
QEIGENANALYSIS
implements the method described by Patterson et al. (2006). It uses the SVD
directive to perform the principal components analysis, and iteratively calculates the Tracy-Widom statistic for the principal components until one is found to be non-significant. Missing values in the marker score data of each marker are replaced by the means of the marker scores of that marker. The significance of the principal components is assessed using tabulated values of the Tracy-Widom density function.
Action with RESTRICT
Restrictions are not allowed.
Reference
Patterson, N., Price, A.L., Reich, D. (2006). Population structure and eigenanalysis. PLoS Genetics, 2, e190. doi:10.1371/journal.pgen.0020190
See also
Procedures: QLDDECAY
, QMASSOCIATION
, QSASSOCIATION
.
Commands for: Statistical genetics and QTL estimation.
Example
CAPTION 'QEIGENANALYSIS example'; STYLE=meta QIMPORT [POPULATION=amp] '%GENDIR%/Examples/QAssociation_geno.txt';\ MAPFILE='%GENDIR%/Examples/QAssociation_map.txt'; MKSCORES=mk;\ CHROMOSOMES=mkchr; POSITIONS=mkpos; MKNAMES=mknames; IDMGENOTYPES=geno_id QEIGENANALYSIS [PRINT=summary; PLOT=eigenvalues,%variance;\ PROBABILITY=0.05; SCALING=none; STANDARDIZE=frequency] \ mk; scores=PCscores; %VARIANCE=explained;\ CUM%VARIANCE=cumulative PRINT PCscores,explained,cumulative QEIGENANALYSIS [PRINT=summary; PLOT=eigenvalues,%variance; NROOTS=10;\ PROBABILITY=0.05; SCALING=none; STANDARDIZE=frequency]\ mk; SCORES=PCscores2; %VARIANCE=explained2;\ CUM%VARIANCE=cumulative2 PRINT PCscores2,explained2,cumulative2