FaST-LMM, which stands for Factored Spectrally Transformed Linear Mixed Models, is a program for performing genome-wide association studies (GWAS) on datasets of all sizes, up to one millions samples.
This release contains the following features, each illustrated with an IPython notebook.
- Core FaST-LMM (notebook) -- Lippert et al., Nature Methods 2011
Improvements:
- Ludicrous-Speed GWAS (notebook) -- Kadie and Heckerman, bioRxiv 2018
- Heritability with Spatial Correction (notebook), Heckerman et al., PNAS 2016
- Two Kernels (notebook) -- Widmer et al., Scientific Reports 2014
- Set Analysis (notebook) -- Lippert et al., Bioinformatics 2014
- Epistasis (notebook) -- Lippert et al., Scientific Reports, 2013
- Prediction (notebook) -- Lippert et al., Nature Methods 2011
A C++ version, which is generally less functional, is available. See http://fastlmm.github.io/.
- IPython Notebooks:
- API Documentation
- Project Home and Full Annotated Bibliography
- Email the developers at fastlmm-dev@python.org.
- Join the user discussion and announcement list (or use web sign up).
- Open an issue on GitHub.
If you have Anaconda installed, installation is as easy as:
conda install "mkl==2019.4" "scipy>=1.1.0" "numpy>=1.11.3"
pip install fastlmm
You must have the mkl 2019.4 (and related) packages installed. It is not available via pip, but the conda command above will install it.
We recommend using a Python distribution such as Anaconda. This distribution can be used on Linux, Windows, and Mac and is free. It is the easiest way to get all the required package dependencies, especially the those related to the MKL library.
Go to the directory where you copied the source code for fastlmm.
On Linux:
At the shell, type:
sudo python setup.py install
On Windows:
At the OS command prompt, type
python setup.py install
When working on the developer version, first add the src directory of the package to your PYTHONPATH environment variable.
For building C-extensions, first make sure all of the above dependencies are installed (including cython)
To build extension (from .\src dir), type the following at the OS prompt:
python setup.py build_ext --inplace
Don't forget to set your PYTHONPATH to point to the directory above the one named fastlmm in the fastlmm source code. For e.g. if fastlmm is in the [somedir] directory, then in the unix shell use:
export PYTHONPATH=$PYTHONPATH:[somedir]
Or in the Windows DOS terminal, one can use:
set PYTHONPATH=%PYTHONPATH%;[somedir]
(or use the Windows GUI for env variables).
Note for Windows: You must have Visual Studio installed.
From the directory tests at the top level, run:
python test.py
This will run a series of regression tests, reporting "." for each one that passes, "F" for each one that does not match up, and "E" for any which produce a run-time error. After they have all run, you should see the string "............" indicating that they all passed, or if they did not, something such as "....F...E......", after which you can see the specific errors.
Note that you must use "python setup.py build_ext --inplace" to run the regression tests, and not "python setup.py install".