Genome Annotation


pints_caller --file-prefix FILE_PREFIX --bam-file [BAM_FILE ...] [--exp-type GROcap,etc.]


This command identifies transcriptional regulatory elements (TREs, enhancers and promoters) from Transcription Start Site (TSS) assays


  • Input/Output:
    • --bam-file [BAM_FILE ...]: input bam file
    • --save-to SAVE_TO: save peaks to this path (a folder), by default, current folder
    • --file-prefix FILE_PREFIX: prefix to all intermediate files
    • --ct-bam [CT_BAM ...]: Bam file for input/control (minus strand).
    • --exp-type {CoPRO,GROcap,PROcap,CAGE,NETCAGE,RAMPAGE,csRNAseq,STRIPEseq,PROseq,GROseq,R_5,R_3,R1_5,R1_3,R2_5,R2_3}: Type of experiment. If the experiment is not listed as a choice, or you know the position of RNA ends on the reads and you want to override the defaults, you can specify:
      • R_5 (5' of the read for single-end lib)
      • R_3 (3' of the read for single-end lib)
      • R1_5 (5' of the read1 for paired-end lib)
      • R1_3 (3' of the read1 for paired-end lib)
      • R2_5 (5' of the read2 for paired-end lib)
      • R2_3 (3' of the read2 for paired-end lib)
    • --reverse-complement: Set this switch if reads in this library represent the reverse complement of RNAs, like PROseq
    • -f [FILTERS ...], --filters [FILTERS ...]: reads from chromosomes whose names contain any matches in filters will be ignored
  • Filtering:
    • --adjust-method {fdr_bh,bonferroni,fdr_tsbh,fdr_tsbky}: method for calculating adjusted p-values. By default fdr_bh
    • --fdr-target FDR_TARGET: FDR target for multiple testing. By default 0.1
    • --close-threshold CLOSE_THRESHOLD: Distance threshold for two peaks (on opposite strands) to be merged. By default 1
    • --stringent-pairs-only: Only consider elements as bidirectional when both of the two peaks are significant according to their p-values
    • --min-length-opposite-peaks MIN_LEN_OPPOSITE_PEAKS, --min-lengths-opposite-peaks MIN_LEN_OPPOSITE_PEAKS: Minimum length requirement for peaks on the opposite strand to be paired, set it to 0 to loose this requirement. By default 0
    • --mapq-threshold MAPQ_THRESHOLD: Minimum mapping quality. By default 30
    • --small-peak-threshold SMALL_PEAK_THRESHOLD: Threshold for small peaks, peaks with width smaller than this value will be required to run extra test. By default 5
    • --max-window-size WINDOW_SIZE_THRESHOLD: max size of divergent windows. By default 2000
    • --remove-sticks: Set this switch to remove stick-like peaks (signal on a single position)
  • Edge trimming:
    • --annotation-gtf ANNOTATION_GTF: Gene annotation file (gtf) format for learning the threshold for edge trimming. If this is specified, other related parameters like --donor-tolerance will be ignored.
    • --tss-extension TSS_EXTENSION: BPs to be extended from annotated TSSs, these extended regions will be used to minimize overlaps between called peaks. By default 200
    • --focused-chrom FOCUSED_CHROM: If --annotation-gtf is specified, you use this parameter to change which chromosome the tool should learn the values from. By default chr1
    • --alpha DONOR_TOLERANCE, --donor-tolerance DONOR_TOLERANCE: The stringency for PINTS to cluster nearby TSSs into a peak. 0 is the least stringent; 1 is the most stringent. By default 0.3
    • --ce-trigger CE_TRIGGER: Trigger for receptor tolerance checking. By default 3
  • Peak properties:
    • --top-peak-threshold TOP_PEAK_THRESHOLD: For very short peaks (smaller than --small-peak-threshold), we use the quantile threshold for peak densities as the background density. By default 0.75.
    • --min-mu-percent MIN_MU_PERCENT: Local backgrounds smaller than this percentile among all peaks will be replaced. By default 0.1. Starting from version 1.1.7, this value will be automatically adjusted.
    • --peak-distance PEAK_DISTANCE: Peaks within this distance (>= 1) will be joined together. By default 1.
    • --peak-width PEAK_WIDTH: Required width of peaks in samples. By default None (no limits)
    • --div-size-min DIV_SIZE_MIN: Min size for a divergent peak. By default 0
    • --summit-dist-min SUMMIT_DIST_MIN: Min dist between two summit. By default 0
  • Testing:
    • --model {ZIP,Poisson}: Statistical model for testing the significance of peaks. By default ZIP
    • --IQR-strategy {bgIQR,pkIQR}: IQR strategy, can be bgIQR (more robust) or pkIQR (more efficient). By default bgIQR
    • --disable-ler: Disable Local Environment Refinement
    • --disable-eler: Disable Enhanced Local Environment Refinement
    • --eler-lower-bound ELER_LOWER_BOUND: Lower bound of the empirical estimation for the density of potential true peaks in the local background. By default 1
    • --disable-small: Set this switch to prevent PINTS from reporting very short peaks(shorter than --small-peak-threshold)
  • Other:
    • --epig-annotation EPIG_ANNOTATION: Refine peak calls with compiled epigenomic annotation from the PINTS web server. Values should be the name of the biosample, for example, K562.
    • --relaxed-fdr-target RELAXED_FDR_TARGET: Relaxed FDR cutoff for TREs overlap with epigenomic annotations. By default 0.2
    • --thread THREAD_N: Max number of threads PINTS can create. By default 1
    • --chromosome-start-with CHROMOSOME_STARTSWITH: Only keep reads mapped to chromosomes with this prefix
    • --dont-output-chrom-size: Don't write chromosome dict to local folder (not recommended)
    • --dont-check-updates: Set this switch to disable update check.
    • --disable-qc: Disable on-the-fly quality control
    • --strict-qc: Raise exceptions if PINTS detects abnormalities during on-the-fly quality control; otherwise, PINTS prints warning messages.
    • --debug: Save diagnostics (independent filtering and pval dist) to local folder
    • --dont-borrow-info-reps: Don't borrow information from reps to refine calling of divergent elements


Real case studies are available at the PINTS web portal. Here is one example using pints_caller to identify TREs from a GRO-cap library.

pints_caller --bam-file GROcap_hg38.uniq.bam \
    --exp-type GROcap \
    --file-prefix GROcap_hg38 \
    --filters U13369 chrM EBV \
    --thread 8

If you have two strand specific bigwig files instead of a bam file, you can directly use PINTS with bigwig inputs.

This document is generated with PINTS version 1.1.8.

Share your experience or ask a question