Introduction to "PCHAT": Principal Component of Heritability Association Test

This method is described in:


Pleiotropy and Principal Components of Heritability Combine to Increase Power for Association” by Lambertus Klei, Diana Luca, B. Devlin and Kathryn Roeder. Genet Epidemiol 32: 9-19.


The program is implemented in Fortran.  The CDF library used for the distribution functions does not compile under gfortran for unix.  If you have other questions or requests contact Bert Klei (kleil<at>upmc<dot>edu).

Download Program:

            The most current version of the program is v2.2


Executable for Windows XP


Executables for  Linux:

We supply 2 different compiled versions of the program.  Which one is faster depends on the architecture of your machine.  We have tested both version on a machine with AMD Opteron processors using RedHat Enterprises Linux v5.   On our machine the Intel version was ~20% faster.

Absoft 64-bit Fortran 95 9.0 with Service Pack 1

Intel Fortran Compiler 10.1


Executable for Mac OS X

This version is compiled with the standard Mac OS X gfortran installation.  When you choose to use this executables you will have to make sure that you have the Apple Developers Tools installed.  The PCHAT binary for Mac OS X was generously provided by Mike Barmata of the Human Genetics department, Graduate School of Public Health, Univ of Pittsburgh.

Max OS X Gfortran


Source code (enter your favorite Fortran compiler in compile.scr and then run this script to compiler the program)

Directions: PCHAT Manual

Bug Fixes:

6/10/2008:  The program can now handle fewer than 10 SNPs.  This bug only affected the output portion of the program and did not interfere with any part of the PCHAT algorithm.


Example Files

            The examples in this section assume the following directory structure:

            Main    -           Examples          -           Data     -           Genotypes

                                                                                    -           Phenotypes

                                                            -           BOTH

                                                            -           NULL

                                                            -           QTL1

                                                            -           QTL2

            If you download the file and unzip this in the directory Main, this structure will be created.

            The assumption is made that you are running the program out of either the BOTH, NULL, QTL1, or QTL2 sub-directory.

The example data were analyzed in 4 different ways:

 1)  NULL - this calculates the distribution of the test statistic under the null 
 2)  QTL1 - this performs the association test using the information from 1) 
       for the distribution of the test statistic. 
 3)  QTL2 - Same as 2) except that the tested SNP are used for determining
       the distribution of the test statistic. 
       The difference between QTL1 and QTL2 are that in ex_QTL1_input.txt you find: 
       0.3958    #standard error of the test statistic (0 if using the data)  
       33.0      #degrees of freedom for the T-distribution (0 if using the data) 
       In ex_QTL2_input.txt you will find: 
       0.0000   #standard error of the test statistic (0 if using the data) 
       00.0 #degrees of freedom for the T-distribution (0 if using the data) 
 4)  This is 1) followed by 2) without a restart of the program.