1. Home
  2. QEIGENANALYSIS procedure

QEIGENANALYSIS procedure

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
Updated on March 6, 2019

Was this article helpful?