Package data.cerevisiae.region

Source Code of data.cerevisiae.region.GenerateGenic

/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package data.cerevisiae.region;

import fork.lib.base.file.management.Dirs;
import fork.lib.bio.anno.genomic.BedReader;
import fork.lib.bio.anno.genomic.BedReaderParam;
import fork.lib.bio.anno.genomic.region.GenomicRegionsBuilder;
import fork.lib.bio.anno.genomic.region.GenomicRegionsModifier;
import java.io.File;
import java.io.IOException;

/**
*
* @author forksapien
*/
public class GenerateGenic {
   
   
protected GenomicRegionsBuilder gb;
   
   
    public GenerateGenic(GenomicRegionsBuilder gb){
        this.gb=gb;
        init();
    }
   
   
   
   
protected void init(){}
   

public void writeToDirectory(File od, String org) throws Exception{
    GenomicRegionsModifier gm= new GenomicRegionsModifier(gb);
    gm.gb.writeToFileBed(new File(od+"/"+org+"_gene_cds_full.bed"));
    gm.getComplementaryStrand().writeToFileBed(new File(od+"/"+org+"_gene_cds-rev_full.bed"));
    gm.getFivePrimeEnds(300, -150).writeToFileBed(new File(od+"/"+org+"_gene_five_300.-150.bed"));
    gm.getFivePrimeEnds(150, 0).writeToFileBed(new File(od+"/"+org+"_gene_five_150.0.bed"));
    gm.getFivePrimeEnds(0, 150).writeToFileBed(new File(od+"/"+org+"_gene_five_0.150.bed"));
    gm.getFivePrimeEnds(-150, 300).writeToFileBed(new File(od+"/"+org+"_gene_five_-150.300.bed"));
    new GenomicRegionsModifier(gm.getGenicRegions(300, 300)).lengthGreaterThan(100).writeToFileBed(new File(od+"/"+org+"_gene_cds_300.300.bed"));
    gm.getThreePrimeEnds(300, -150).writeToFileBed(new File(od+"/"+org+"_gene_three_300.-150.bed"));
    gm.getThreePrimeEnds(150, 0).writeToFileBed(new File(od+"/"+org+"_gene_three_150.0.bed"));
    gm.getThreePrimeEnds(0, 150).writeToFileBed(new File(od+"/"+org+"_gene_three_0.150.bed"));
    gm.getThreePrimeEnds(-150, 300).writeToFileBed(new File(od+"/"+org+"_gene_three_-150.300.bed"));
    gm.getAllIntergenicRegions().writeToFileBed(new File(od+"/"+org+"_intergenic_full.bed"));
    new GenomicRegionsModifier(gm.getAllIntergenicRegions()).getGenicRegions(300, 300) .writeToFileBed(new File(od+"/"+org+"_intergenic_300.bed"));
   
    gm.getFivePrimeEnds(300, 0).writeToFileBed(new File(od+"/"+org+"_gene_five_300.0.bed"));
    gm.getFivePrimeEnds(0, 300).writeToFileBed(new File(od+"/"+org+"_gene_five_0.300.bed"));
}
   
   
   
   
   
public static void main(String[] args) throws Exception {
    File dir= Dirs.getFile("dir");
   
    //File f= new File(dir+"/anno/sgdGene_sacCer1.bed");String org= "sacCer1";
    File f= new File(dir+"/anno/xu_2009_orfs.bed");String org= "sacCer1-xu";
    //File f= new File(dir+"/anno/refGene_hg19.bed");String org= "refGene_hg19";
   
   
    File od= new File(dir+"/anno/bed/"+org);
   
    BedReaderParam par= new BedReaderParam();
    par.ifDirectional=true;
   
    GenomicRegionsBuilder gb= new BedReader(f, par).getGenomicRegionsBuilder();
   
    GenerateGenic gg= new GenerateGenic(gb);
    gg.writeToDirectory(od, org);
}




}






TOP

Related Classes of data.cerevisiae.region.GenerateGenic

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.