Coder Social home page Coder Social logo

chipexoqual's Introduction

ChIPexoQual

ChIPexoQual provides a quality control pipeline of ChIP-exo nexus/data. It allows the quick evaluation of ChIP-exo/nexus data quality by directly operating on aligned read files and without requiring any complex statistical modelling or intensive computation such as identification of potential binding regions/events. This enables its broad application and versatile utility, and provide easy data evaluation before any statistical analysis for identifying binding events.

The overall pipeline follows the steps:

  1. Partitions the reference genome into islands representing overlapping clusters of reads separated by gaps.
  2. Calculates a set of summary statistics.
  3. Visualize the data with a collection of diagnostic plots aimed at quantifying ChIP enrichment and strand imbalance.
  4. Generates quantitative summaries of these diagnostic plots.

This version includes two additional modules:

a) ExoDataSubsampling to subsample N1 < ... < N reads and repeat the the first 4 steps.

b) ExoDataBlacklists to partition the ChIP islands into two collections based on their overlap with a set of blacklisted regions.

To install the package, it is easiest to use:

#install.packages("devtools")
source("http://www.bioconductor.org/biocLite.R")
biocLite("BiocInstaller")
devtools::install_github("welch16/ChIPexoQualExample")
devtools::install_github("welch16/ChIPexoQual",ref = "devel")

References

Welch R, Chung D, Grass J, Landick R, and Keles S. "Data Exploration, Quality Control, and Statistical Analysis of ChIP-exo/nexus Experiments" (in preparation)

chipexoqual's People

Contributors

welch16 avatar hpages avatar keles avatar

Stargazers

Duy Nguyen avatar

Watchers

James Cloos avatar  avatar

chipexoqual's Issues

Poor small chromosome coverage returns error

This package will return subscripting errors when considering chromosomes that contain reads on only one strand (fwd versus rev) and not the other. This is a particular problem when looking at small, unannotated contigs in the dm6 and mm10 genomes.

We circumvent this by importing the BAM files with readGAlignments and then using the reads option in ExoData. Is there a way to fix this so we can use ExoData directly from the filepath?

Error in sample function when creating ExoData

When creating an ExoData, this error can occur:
Error: cannot take a sample larger than the population when 'replace = FALSE'

This seems to be related to the number of reads in the file since reading the file using readGAlignments and sampling a high number of those reads often allow the creation of ExoData without the error.

Minor Roxygen typo

calculateSummary() has an Roxygen block prefixed with ## rather than #' or ##'. This will presumably keep it from being built into man/.

I just caught it while casual browsing, you might want to grep '^## ' R/*.R the files to look for other examples...

Error in generating Exo data object - Error: subscript contains invalid names

Hello,
I am new in the field of data analysis and this is first time I am using R. I am trying to generate Exo data object and every time I am getting following error:

SM001A = ExoData(reads = ex, mc.cores = 2L, verbose = TRUE)
Using 'reads' argument
Keeping reads in object: No
Error: subscript contains invalid names

I am stuck at this error for almost a week now. Please help!

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.