Coder Social home page Coder Social logo

sunnycqcn / bamdeal Goto Github PK

View Code? Open in Web Editor NEW

This project forked from bgi-shenzhen/bamdeal

0.0 1.0 0.0 5.16 MB

BamDeal: a comprehensive toolkit for bam manipulation

License: MIT License

C++ 41.20% Makefile 5.72% Shell 11.27% Roff 32.25% Perl 0.47% C 8.84% M4 0.24%

bamdeal's Introduction

BamDeal

BamDeal: a comprehensive toolkit for bam manipulation
BamDeal is a full-featured toolkit for comprehensive analysis of bam file, BamDeal is implemented in C/C++ language, available for Linux and Mac OS X operating system.

1) Download and Install


Download
 
Pre-installations of 4 libraries or softs are required before installing BamDel  
1 htslib: samtools-1.6/htslib-1.6  
2 g++ : g++ with --std=c++11 > 4.8+ is recommended  
3 zlib : zlib > 1.2.3 is recommended  
4 R : R with ggplot is recommended

  • To compile BamDeal, do [ ./configure] first, then [make]
  • Final software can be found in the direcoty [bin/BamDeal]

For linux/Unix and macOS

        tar -zxvf  BamDeal-XXX.tar.gz
        cd BamDeal-XXX;
        ./configure;        
		make;                  
        ./bin/BamDeal

Note: If fail in [./configure], to find library htslib, you can add LDFLAGS to find the htslib library and CPPFLAGS to find the htslib header [ ./configure LDFLAGS=-L/usr/lib/ CPPFLAGS=-I/usr/include/]

2) Features


Parameter description

Program: BamDeal
Version: 0.19   [email protected]      2018-05-28

        Usage:

                convert        convert tools
                modify         modify tools
                statistics     statistics analysis tools
                visualize      visualize tools for bam

                Help           Show help in detail

convert

Module Function Description
Summary
soap2bam soap --> bam/sam Format
bam2soap bam/sam --> soap Format
bam2fq bam/sam --> Fastq Format
bam2fa bam/sam --> Fasta Format

modify

Module Function Description
Summary
bamFilter filter low quality read in bam
bamSplit split single/muti-Bam by chr
bamAssign split single/muti-Bam by assign chr
bamCat Merge/Cat diff header muti bam to one bam
bamRand random out partly of bam read
bamSubChr get/remove some chr form bam
bamShiftQ modify seq phred quality in bam

statistics

Module Function Description
Summary
Coverage Calculate Genome Coverage/Depth/GC Dis based Bam
DeteCNV Detect CNV/Deletion Region by merge Depth info based Bam
DeteSV Detect SV by Pair End Read insert size in Bam
LowDepth GiveOut bed file of low Depth Region(may BigDeletion)

visualize

Module Function Description
Summary
StatQC Basic Stat and qualty control,Show gc-depth... result Fig
DepthCov Show pdf Fig of Depth Dis & Depth~Coverage
DepthGC Show pdf Fig of Depth~RefGC
DepthSlide Show Manhattan Fig of Depth sliding Windows along genome

3) Examples


    1. convert
    #convert soap 2 bam 
   ./bin/BamDeal   convert   soap2bam   -InSoap <in.soap> -OutBam <out.bam>  -Dict Ref.fa
    #convert bam 2 soap 
    ./BamDeal  convert   bam2soap   -InFile <in.bam>  -OutPut <Out.soap>
    1. modify
    #  cat diff header bam  to one bam 
    ./BamDeal    modify  bamCat  -InFile A.bam -InFile B.bam  -OutFile C.bam
    #  merge  muti sort bam  to an sort bam 
    ./BamDeal    modify  bamCat  -InList  <bam.Sort.list>  -OutFile <out.sort.bam>  -Merge
    #  split bam by chr 
     ./BamDeal   modify   bamSplit  -InList  <bam.list>  -ReSetHead   -OutDir  ./
    1. statistics
    # detect CNV/Deletion Region based bam file  
      ./BamDeal   statistics  DeteCNV  -List  <bam.list>  -OutPut  <outPrefix>
    # stat coverage and depth each chr 
      ./BamDeal  statistics  Coverage   -List  <bam.list>  -OutPut  <out>  -Ref  Ref.fa  -Stat
    # GiveOut bed file of low Depth Region 
      ./BamDeal   statistics  LowDepth   -InList     <bam.list>  -OutPut  <out.bed>
    1. statistics
    #  Show Manhattan Fig of Depth sliding Windows along genome
      ./BamDeal    visualize  DepthSlide   -InList  <bam.list>  -Ref  <Ref.fa> -OutPut  <outPrefix>
    # Show pdf Fig of Depth~RefGC
       ./BamDeal    visualize DepthGC  -InList  <bam.list>  -Ref  <Ref.fa> -OutPut  <outPrefix>
    # Show pdf Fig of Depth Dis & Depth~Coverage 
     ./BamDeal    visualize DepthCov    -InList     <bam.list> -OutPut  <outPrefix>

see more other Usage in the Documentation

4) Format


Format Introduction

5) Discussing


######################swimming in the sky and flying in the sea ########################### ##

bamdeal's People

Contributors

hewm2008 avatar

Watchers

 avatar

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.