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