Comments (12)
I am studying the GEMMA code to see how we add LOCO support.
from gemma.
Okay @pjotrp. It basically would involve an "outer loop" that would run relationship matrix creation + LMM association analysis on each chromosome. Note that I have some R code (see function run.gemma
in that file) that does this in case it is useful for helping to implement LOCO within gemma.
from gemma.
The outer loop may be the easiest hack for now though it will be hard to make generic for all supported input formats. If you look at the code you'll see that GEMMA has an innerloop for every file type it supports. I somehow need to plug in K-1 and subset SNPs. Looks like that will be pretty intrusive to make that generic.
from gemma.
I have implemented LOCO for Bimbam format. I'll put in a PR after we agree on the coding style, see #62
from gemma.
Two more things need to be done:
- Add LOCO to plink format
- Run all chromosomes instead of just one
I think we need to focus on BIMBAM and Plink formats for core algorithms. Other formats should really format into one of these and eventually we should remove internal support. That way we can become more DRY.
wdyt?
from gemma.
I agree.
from gemma.
@pjotrp Sounds like a good plan to me!
from gemma.
https://github.com/genetics-statistics/gemma-wrapper now runs all chromosomes and caches results too.
Leaving issue open until I add LOCO to Plink.
from gemma.
AnalyzeBimBam and AnalyzePlink contain duplicate logic - and they
differ now because the first has LOCO support. To add LOCO support to
PLINK we'll converge on logic and make the functions DRY.
The functions can be split into:
- Initialization
- Partially read genotype data (batch processing)
- LMM on the submatrix
- Collate the results
- Cleanup
The only thing specific regarding the input file format is (2). The
way to solve is is to put that reader in a function that gets passed
in. I'll work on that in a new branch (for 0.98 release).
from gemma.
Hello! Are there any news regarding LOCO for Plink format?
from gemma.
It will happen sometime this year. If you want to help out :). Meanwhile, convert plink to BIMBAM. It can be done with the plink tool.
from gemma.
It is part of gemma2/lib. Gemma2/lib converts plink and bimbam to a new Rqtl2/GEMMA2 format and that supports LOCO.
from gemma.
Related Issues (20)
- Errors when running GEMMA in an SoS step but ok in command line HOT 1
- FAILED error HOT 1
- Issue with GEMMA-Wrapper HOT 1
- Parsing input file '' failed in function AnalyzeBimbamGXE
- Enforce failed for number of analyzed individuals equals 0. in src/param.cpp at line 2073 in ProcessCvtPhen HOT 2
- long haplotype as population structure
- basic usage doesn't work
- Gemma run-time for Estimate Relatedness Matrix calculation
- very low number of analyzed SNPs/var
- The input files includes 26 linkage groups but the output files only includes 22 linkage group
- Categorical covariates
- Pve is .999 HOT 1
- gemma-wrapper:279:in `<main>': Expected GEMMA -a genotype file switch (RuntimeError)
- Got a nan in the p-value results HOT 1
- gsl: newton.c:88: ERROR: function value is not finite 3.08%
- GSL ERROR: function value is not finite in brent.c at line 58 errno 9
- WARNING: Brent did not converge
- Why the diagonal of relatedness matrix is not equal to 1 or a constant value? HOT 1
- The problem of filtering snp parameters
- ERROR: Enforce failed for Problem reading FAM file (phenotypes do not match geno file) in src/gemma_io.cpp at line 600 in ReadFile_fam GEMMA 0.98.3 (2020-11-28) by Xiang Zhou and team (C) 2012-2020
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from gemma.