Git Product home page Git Product logo

phasing_tests's Introduction

#Phasing Code

Uses selfed progeny from a single mom to

  1. impute mom's genotype
  2. phase mom
  3. impute self progeny genotypes

Currently assumes data is coded as 0: AA 1: Aa 2: aa and 3 for missing data.


split JRI's codes and test independently

### loading all the functions in folder "lib"
sourceall <-function(rm=FALSE){
    if(rm) rm(list=ls())
    f <- sapply(list.files(pattern="[.]R$", path="lib", full.names=TRUE), source)
}
sourceall(rm=T)

File Formats (PLINK format)

It accepts sequences of the form 0/1/2/3 where 0/2 denote the genotypes that are homozygous, 1 denotes a heterozygous genotype, and 3 denotes an unknown genotype.

The PED file format is as follows (plink --no-sex, --no-pheno):

  • tab delimited
  • 'family ID' 'plant ID' 'Paternal ID' 'Maternal ID' 'genotype sequence'

The MAP file format

  • 'chr' 'SNPID' 'Base-pair position' 'genetic position'

For example:


phasing_tests's People

Contributors

yangjl avatar rossibarra avatar

Watchers

 avatar James Cloos avatar  avatar Kate Crosby avatar

phasing_tests's Issues

switching error

image

Switching errors may happen in the regions where contain some recombinant kids.

A total of 10 progeny (shown 5 in the figure) were simulated to phase the mom. In the above figure, 1st panel, mom real hap1, hap2, genotype, phase1 and phase2; 2-6 panels, 5 kids. Yellow color indicates switching errors.

Mom missing data

Right now assumes no missing data in mom. Should be able to resolve with adding more 1's to the probability matrices?

Funky windows

With recombination (and occasionally without), some windows will make multiple phases/haplotypes equally likely. This is suggestive of recombination.

Are there good heuristics for when there has been recombination in a window?

If there are lots of equally probable haplotypes can we resolve by storing all, then traversing the list of haplotypes at the end to find the path with minimum differences (a sort of cheesy HMM)?

Impute outcrossed progeny

Currently only imputes selfed progeny. Will require
- all parents imputed (and phased?) first
- second pass to use imputed parents and small modification of current code to do imputation of progeny

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.