Eigensoft

Website: http://www.hsph.harvard.edu/alkes-price/software/

Introduction

The EIGENSOFT package combines functionality from our population genetics methods (Patterson et al. 2006) and EIGENSTRAT stratification correction method (Price et al. 2006). The EIGENSTRAT method uses principal components analysis to explicitly model ancestry differences between cases and controls along continuous axes of variation; the resulting correction is specific to a candidate marker’s variation in frequency across ancestral populations, minimizing spurious associations while maximizing power to detect true associations. The EIGENSOFT package has a built-in plotting script and supports multiple file formats and quantitative phenotypes.

Loading the Module

Reserve a compute node. Then check the available module (module avail) and how to load it

module spider eigensoft

Output:

--------------------------------------------------------------------

  eigensoft:

--------------------------------------------------------------------

    Description:

      The EIGENSOFT package combines functionality from our

      population genetics methods (Patterson et al. 2006) and our

      EIGENSTRAT stratification correction method.

     Versions:

        eigensoft/6.1.4

        eigensoft/7.2.1

--------------------------------------------------------------------

  For detailed information about a specific "eigensoft" module (including how to load the modules) use the module's full name.

  For example:

     $ module spider eigensoft/7.2.1

--------------------------------------------------------------------

We will load gcc and then eigensoft:

module load gcc

module load eigensoft/7.2.1

Running Eigensoft

An example on how to run the software on a compute node:

Copy the files from the example directory to your home directory:

mkdir -p ~/example

mkdir -p ~/example/eigensoft

cp -r /usr/local/gcc-6_3_0/eigensoft/7.2.1/EIGENSTRAT/ ~/example/eigensoft

Run the following commands

$ perl example.perl

Output:

smartpca.perl -i example.geno  -a example.snp  -b example.ind  -k 2  -o example.pca  -p example.plot  -e example.eval  -l example.log  -m 5  -t 2  -s 6.0

smartpca -p example.pca.par >example.log

ploteig -i example.pca.evec -c 1:2  -p Case:Control  -x  -y  -o example.plot.xtxt

evec2pca.perl 2 example.pca.evec example.ind example.pca

smarteigenstrat.perl  -i example.geno  -a example.snp  -b example.ind  -p example.pca  -k 1  -o example.chisq  -l example.log

smarteigenstrat -p example.chisq.par >example.log

gc.perl example.chisq example.chisq.GC

Input:

$ cat example.chisq

Output:

Chisq EIGENSTRAT

2.2222 0.9615

2.9167 0.2219

2.0833 0.0612

4.1667 0.1258

2.9167 2.0997

5.0000 3.0000

3.8095 0.0764

Input:

$ cat example.chisq.GC

Output:

Chisq EIGENSTRAT

lambda=6.396 lambda=1.000

0.3475 0.9615

0.4560 0.2219

0.3257 0.0612

0.6515 0.1258

0.4560 2.0997

0.7818 3.0000

0.5956 0.0764

Another example

Execute:

pcatoy

Output:

The eigenvectors of the 2x2 identity matrix are:

 1.00 0.00

 0.00 1.00

Refer to HPC Guide to Genomics & HPC Software Guide for more information.

References

[1] Eigensoft Home