https://github.com/haohanwang/cmm
Coupled Mixed Model
https://github.com/haohanwang/cmm
gwas gwas-tools joint-analysis joint-models
Last synced: 20 days ago
JSON representation
Coupled Mixed Model
- Host: GitHub
- URL: https://github.com/haohanwang/cmm
- Owner: HaohanWang
- License: mit
- Created: 2018-01-29T20:56:20.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2021-10-07T01:43:30.000Z (almost 4 years ago)
- Last Synced: 2023-10-20T20:09:43.637Z (almost 2 years ago)
- Topics: gwas, gwas-tools, joint-analysis, joint-models
- Language: Python
- Homepage:
- Size: 8.26 MB
- Stars: 5
- Watchers: 2
- Forks: 3
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README

# CMM (Coupled Mixed Model)
Implementation of CMM in this paper:
Wang, Haohan, Fen Pei, Michael M. Vanyukov, Ivet Bahar, Wei Wu, and Eric P. Xing. "Coupled mixed model for joint genetic analysis of complex disorders with two independently collected data sets." BMC bioinformatics 22, no. 1 (2021): 1-14. (_[link](https://bmcbioinformatics.biomedcentral.com/articles/10.1186/s12859-021-03959-2)_)
## Introduction
CMM (Coupled Mixed Model) is used to simulnateously conduct genetic analysis for independently collected data sets of different related phenotypes. CMM aims to achieve this goal by inferring all the information enclosed by dashed lines in the following figure.

**Replication:** This repository serves for the purpose to guide others to use our tool, if you are interested in the scripts to replicate our results, please contact us and we will share the repository for replication. Contact information is at the bottom of this page.
## File Structure:
* [models/](https://github.com/HaohanWang/CMM/tree/master/model) main method for CMM
* [utility/](https://github.com/HaohanWang/CMM/tree/master/utility) other helper files
* [cmm.py](https://github.com/HaohanWang/CMM/blob/master/cmm.py) main entry point of using CMM to work with your own data## An Example Command:
```
python cmm.py --file1 ./data/mice1.plink --file2 ./data/mice2.plink -m --snum 20
```
#### Instructions
```
Options:
-h, --help show this help message and exitData Options:
--file1 INPUT FILE ONE name of the first input file
--file2 INPUT FILE TWO name of the second input fileModel Options:
--lambda=LMBD the weight of the penalizer. If neither lambda or snum
is given, cross validation will be run.
--snum=SNUM the number of targeted variables the model selects. If
neither lambda or snum is given, cross validation will
be run.
-s Stability selection
-q Run in quiet mode
-m Run without missing genotype imputation
```#### Data Support
* CMM currently supports CSV and binary PLINK files.
* Extensions to other data format can be easily implemented through `FileReader` in `utility/dataLoadear`. Feel free to contact us for the support of other data format.## Python Users
Proficient python users can directly call the CMM method with python code, see example at [Line 261 to Line 266](https://github.com/HaohanWang/CMM/blob/master/cmm.py#L261)## Installation (Not Required)
You will need to have numpy, scipy and pysnptool installed on your current system.
You can install CMM using pip by doing the following```
pip install git+https://github.com/HaohanWang/CMM
```You can also clone the repository and do a manual install.
```
git clone https://github.com/HaohanWang/CMM
python setup.py install
```## Contact
[Haohan Wang](http://www.cs.cmu.edu/~haohanw/)
·
[@HaohanWang](https://twitter.com/HaohanWang)