eCLIP-Peak
Pipeline for using IDR to identify a set of reproducible peaks given eClIP dataset with two or three replicates.
Installation
-
For Van Nostrand Lab
The pipeline has already been installed. Activate its environment by issue the following command:
source /storage/vannostrand/software/eclip/venv/environment.sh. -
For all others:
- Install Python (3.6+)
- Install peak (
pip install eclip-peak) - Install IDR (2.0.3+)
- Install Perl (5.10.1+) with the following packages:
- Statistics::Basic (
cpanm install Statistics::Basic) - Statistics::Distributions (
cpanm install Statistics::Distributions) - install Statistics::R (
cpanm install Statistics::R)
- Statistics::Basic (
Usage
-
For Van Nostrand Lab
After activate peak's environment call
peak -hto see the detailed usage. -
For all others:
After successfully installed Python, peak, Perl (with required packages), call
peak -hinside your terminal to see the following detailed usage:
$ peak -h
usage: peak [-h]
[--ip_bams IP_BAMS [IP_BAMS ...]]
[--input_bams INPUT_BAMS [INPUT_BAMS ...]]
[--peak_beds PEAK_BEDS [PEAK_BEDS ...]]
[--read_type READ_TYPE] [--outdir OUTDIR]
[--species SPECIES]
[--l2fc L2FC] [--l10p L10P] [--idr IDR]
[--dry_run] [--cores] [--debug]
Pipeline for using IDR to identify a set of reproducible peaks given eClIP dataset
with two or three replicates.
optional arguments:
-h, --help show this help message and exit
--ip_bams IP_BAMS [IP_BAMS ...]
Space separated IP bam files (at least 2 files).
--input_bams INPUT_BAMS [INPUT_BAMS ...]
Space separated INPUT bam files (at least 2 files).
--peak_beds PEAK_BEDS [PEAK_BEDS ...]
Space separated peak bed files (at least 2 files).
--ids IDS [IDS ...] Optional space separated short IDs (e.g., S1, S2, S3) for datasets.
--read_type READ_TYPE
Read type of eCLIP experiment, either SE or PE.
--outdir OUTDIR Path to output directory.
--species SPECIES Short code for species, e.g., hg19, mm10.
--l2fc L2FC Only consider peaks at or above this l2fc cutoff, default: 3.
--l10p L10P Only consider peaks at or above this l10p cutoff, default: 3.
--idr IDR Only consider peaks at or above this idr score cutoff, default: 0.01.
--cores CORES Maximum number of CPU cores for parallel processing, default: 1.
--dry_run Print out steps and inputs/outputs of each step without
actually running the pipeline.
--debug Invoke debug mode (only for develop purpose).
Outline of workflow
- Normalize CLIP IP BAM over INPUT for each replicate
- Peak compression/merging on input-normalized peaks for each replicate
- Entropy calculation on IP and INPUT read probabilities within each peak for each replicate
- Run IDR on peaks ranked by entropy
- Normalize IP BAM over INPUT using new IDR peak regions
- Identify reproducible peaks within IDR regions
Examples
-
eCLIP with 2 replicates
Assuming we have eCLIP pipeline run successfully and have the following files generated for species
hg19:replicate 1: IP BAM: ip1.bam INPUT BAM: input1.bam Peak BED: clip1.peak.clusters.bed replicate 2: IP BAM: ip2.bam INPUT BAM: input2.bam Peak BED: clip2.peak.clusters.bedThe pipeline then can be called like this to identify reproducible peaks:
peak \ --ip_bams ip1.bam ip2.bam \ --input_bams input1.bam input2.bam \ --peak_beds clip1.peak.clusters.bed clip2.peak.clusters.bed \ --species hg19
-
eCLIP with 3 replicates
Assuming we have eCLIP pipeline run successfully and have the following files generated for species
hg19:replicate 1: IP BAM: ip1.bam INPUT BAM: input1.bam Peak BED: clip1.peak.clusters.bed replicate 2: IP BAM: ip2.bam INPUT BAM: input2.bam Peak BED: clip2.peak.clusters.bed replicate 3: IP BAM: ip3.bam INPUT BAM: input3.bam Peak BED: clip3.peak.clusters.bedThe pipeline then can be called like this to identify reproducible peaks:
peak \ --ip_bams ip1.bam ip2.bam ip3.bam \ --input_bams input1.bam input2.bam input3.bam \ --peak_beds clip1.peak.clusters.bed clip2.peak.clusters.bed clip3.peak.clusters.bed \ --species hg19
Note:
- The indentation of the command does not matter, you can write it on the same line.
- The order of bam and peak files followed by
--ip_bams,input_bams, andpeak_bedsDOES matter, make sure you pass them in a consistent order for these three parameters. - There are 3 cutoffs can be set for fine tune the peak filtering, see Usage part for more details.
- If the pipeline failed, check the log to identify the error and make necessary changes, re-run the pipeline will skip successfully processed parts only continue to processed failed and unprocessed parts.
Output
The peak pipeline will output 5 different types of files into the current work directory
or into a user specified output directory (via --outdir):
- *.bed: either a 6 columns or 9 columns bed file saves information for peaks.
- *.tsv: TSV separated text file saves more information in addition to the BED file.
- *.txt: text file saves the mapped reads count
- *.out: TAB separated text file generated by IDR.
- *.png: plot generated by IDR.
All filenames of output files are self-explained, only the basename of peak bed files ( after the removal of .peak.clusters.bed) was used to mark the name of each replicate.
The reproducible peaks can be found in *.reproducible.peaks.bed and additional information can be found in *.reproducible.peaks.custom.tsv. While the former file is 6-column bed file, the later one is a TSV separated text file with the following columns in order:
- IDR region (entire IDR identified reproducible region)
- Peak (reproducible peak region)
- Geomean of the l2fc
- Columns of log2 fold change (2 or 3 columns for 2 or 3 replicates experiment, respectively)
- Columns of -log10 p-value (2 or 3 columns for 2 or 3 replicates experiment, respectively)
Metadata
Release files for eclip-peak 1.0.20
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| eclip-peak-1.0.20.tar.gz | 23.8 kB | Without provenance | Details for eclip-peak-1.0.20.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| eclip_peak-1.0.20-py3-none-any.whl | Python 3 | none | any | Details for eclip_peak-1.0.20-py3-none-any.whl |
Total release size: 80.3 kB
Release files / eclip-peak-1.0.20.tar.gz
| Download URL | eclip-peak-1.0.20.tar.gz |
|---|---|
| Size | 23.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
3e4c9498e663f9bf912e3bbb4c22be6643073530b4b314ebde9296517e9cb069
|
|
BLAKE2b-256 checksum How to use checksums |
fe155ec8c6ffd24575ad0d79550deb90f345b51ccc86076107de584287c9d5a0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.7
|
Release files / eclip_peak-1.0.20-py3-none-any.whl
| Download URL | eclip_peak-1.0.20-py3-none-any.whl |
|---|---|
| Size | 56.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
b960590b8e84e9b68023390958c48820f8c74862144e8f7a35cff109e8200c0c
|
|
BLAKE2b-256 checksum How to use checksums |
80bff901a8ccf2dafcb225f1bdd64339b3ae5aa2d3b55b2a41f9dafd4edb2d25
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.7
|
Security for eclip-peak 1.0.20
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.