ワンクリックで
deeptools
NGS analysis toolkit. BAM to bigWig conversion, QC (correlation, PCA, fingerprints), heatmaps/profiles (TSS, peaks), for ChIP-seq, RNA-seq, ATAC-seq visualization.
メニュー
NGS analysis toolkit. BAM to bigWig conversion, QC (correlation, PCA, fingerprints), heatmaps/profiles (TSS, peaks), for ChIP-seq, RNA-seq, ATAC-seq visualization.
Build with and use Pi, the minimal terminal coding harness. Use for installing Pi, configuring providers/models/settings, creating Pi skills/extensions/packages/themes/prompt templates, embedding Pi through the SDK, integrating over RPC or JSON event streams, parsing sessions, or developing custom Pi providers and TUI components.
Query the CZ CELLxGENE Census programmatically for versioned public single-cell and spatial transcriptomics data. Use when you need population-scale cell metadata, gene expression slices, Census summary counts, source H5AD URIs/downloads, embeddings, spatial Census data, or reference atlas comparisons across organisms, tissues, diseases, assays, and cell types. For analyzing your own local single-cell data use scanpy, anndata, or scvi-tools.
DiffDock and DiffDock-L molecular docking. Use for protein-small-molecule pose prediction from PDB or sequence plus SMILES/SDF/MOL2, batch docking, virtual screening, and pose-confidence interpretation. Not for binding affinity prediction.
Use when working directly with the `esm` Python SDK, ESM3 or ESMC model IDs, Forge/Biohub inference clients, or ESMFold2 folding workflows.
Fast CLI/Python queries to 20+ bioinformatics databases. Use for quick lookups: gene info, BLAST/BLAT, viral sequence downloads, AlphaFold structures, enrichment analysis, OpenTargets, COSMIC, CELLxGENE, and 8cube mouse specificity/expression data. Best for interactive exploration and simple queries. For batch processing or advanced BLAST use biopython; for multi-database Python workflows use bioservices.
Differential gene expression analysis for bulk RNA-seq with PyDESeq2, including formulaic designs, Wald tests, FDR correction, LFC shrinkage, and result visualization.
| name | deeptools |
| description | NGS analysis toolkit. BAM to bigWig conversion, QC (correlation, PCA, fingerprints), heatmaps/profiles (TSS, peaks), for ChIP-seq, RNA-seq, ATAC-seq visualization. |
| license | BSD license |
| allowed-tools | ["Read","Write","Edit","Bash"] |
| compatibility | Requires Python >3.8 and deepTools 3.5.6-compatible dependencies. The upstream project recommends conda/bioconda for full dependency resolution; repo examples use uv with pinned PyPI installs for reproducible command-line workflows. |
| metadata | {"version":"1.1","skill-author":"K-Dense Inc."} |
deepTools is a comprehensive suite of Python command-line tools designed for processing and analyzing high-throughput sequencing data. Use deepTools to perform quality control, normalize data, compare samples, and generate publication-quality visualizations for ChIP-seq, RNA-seq, ATAC-seq, MNase-seq, and other NGS experiments.
Core capabilities:
This skill should be used when:
For users new to deepTools, start with file validation and common workflows:
Before running any analysis, validate BAM, bigWig, and BED files using the validation script:
python scripts/validate_files.py --bam sample1.bam sample2.bam --bed regions.bed
This checks file existence, BAM indices, and format correctness.
For standard analyses, use the workflow generator to create customized scripts:
# List available workflows
python scripts/workflow_generator.py --list
# Generate ChIP-seq QC workflow
python scripts/workflow_generator.py chipseq_qc -o qc_workflow.sh \
--input-bam Input.bam --chip-bams "ChIP1.bam ChIP2.bam" \
--genome-size 2913022398
# Make executable and run
chmod +x qc_workflow.sh
./qc_workflow.sh
See assets/quick_reference.md for frequently used commands and parameters.
uv pip install deepTools==3.5.6
Upstream recommends conda/bioconda for full dependency resolution, especially on shared HPC systems:
conda install -c conda-forge -c bioconda deeptools
On Apple Silicon, upstream documents either the PyPI route above or an osx-64 conda environment when native conda packages are unavailable.
deepTools workflows typically follow this pattern: QC → Normalization → Comparison/Visualization
When users request ChIP-seq QC or quality assessment:
scripts/workflow_generator.py chipseq_qcInterpreting results:
Full workflow details in references/workflows.md → "ChIP-seq Quality Control Workflow"
For full ChIP-seq analysis from BAM to visualizations:
Use scripts/workflow_generator.py chipseq_analysis to generate template.
Complete command sequences in references/workflows.md → "ChIP-seq Analysis Workflow"
For strand-specific RNA-seq coverage tracks:
Use bamCoverage with --filterRNAstrand to separate forward and reverse strands.
Important: NEVER use --extendReads for RNA-seq (would extend over splice junctions).
Strand note: --filterRNAstrand assumes common dUTP/NSR/NNSR reverse-stranded library preparation. For libraries where read 1 follows the RNA strand, forward/reverse output is inverted; use SAM flag filters when library chemistry differs.
Use normalization: CPM for fixed bins, RPKM for gene-level analysis.
Template available: scripts/workflow_generator.py rnaseq_coverage
Details in references/workflows.md → "RNA-seq Coverage Workflow"
ATAC-seq requires Tn5 offset correction:
--ATACshiftTemplate: scripts/workflow_generator.py atacseq
Full workflow in references/workflows.md → "ATAC-seq Workflow"
Convert BAM to normalized coverage:
bamCoverage --bam input.bam --outFileName output.bw \
--normalizeUsing RPGC --effectiveGenomeSize 2913022398 \
--binSize 10 --numberOfProcessors 8
Compare two samples (log2 ratio):
bamCompare -b1 treatment.bam -b2 control.bam -o ratio.bw \
--operation log2 --scaleFactorsMethod readCount
Key tools: bamCoverage, bamCompare, multiBamSummary, multiBigwigSummary, correctGCBias, alignmentSieve
Complete reference: references/tools_reference.md → "BAM and bigWig File Processing Tools"
Check ChIP enrichment:
plotFingerprint -b input.bam chip.bam -o fingerprint.png \
--extendReads 200 --ignoreDuplicates
Sample correlation:
multiBamSummary bins --bamfiles *.bam -o counts.npz
plotCorrelation -in counts.npz --corMethod pearson \
--whatToShow heatmap -o correlation.png
Key tools: plotFingerprint, plotCoverage, plotCorrelation, plotPCA, bamPEFragmentSize
Complete reference: references/tools_reference.md → "Quality Control Tools"
Create heatmap around TSS:
# Compute matrix
computeMatrix reference-point -S signal.bw -R genes.bed \
-b 3000 -a 3000 --referencePoint TSS -o matrix.gz
# Generate heatmap
plotHeatmap -m matrix.gz -o heatmap.png \
--colorMap RdBu --kmeans 3
Create profile plot:
plotProfile -m matrix.gz -o profile.png \
--plotType lines --colors blue red
Key tools: computeMatrix, plotHeatmap, plotProfile, plotEnrichment
Complete reference: references/tools_reference.md → "Visualization Tools"
Choosing the correct normalization is critical for valid comparisons. Consult references/normalization_methods.md for comprehensive guidance.
Quick selection guide:
Normalization methods:
Full explanation: references/normalization_methods.md
RPGC normalization requires effective genome size. Common values:
| Organism | Assembly | Size | Usage |
|---|---|---|---|
| Human | GRCh38/hg38 | 2,913,022,398 | --effectiveGenomeSize 2913022398 |
| Human | T2T/CHM13CAT_v2 | 3,117,292,070 | --effectiveGenomeSize 3117292070 |
| Mouse | GRCm39/mm39 | 2,654,621,783 | --effectiveGenomeSize 2654621783 |
| Mouse | GRCm38/mm10 | 2,652,783,500 | --effectiveGenomeSize 2652783500 |
| Zebrafish | GRCz11 | 1,368,780,147 | --effectiveGenomeSize 1368780147 |
| Drosophila | dm6 | 142,573,017 | --effectiveGenomeSize 142573017 |
| C. elegans | ce10/ce11 | 100,286,401 | --effectiveGenomeSize 100286401 |
Complete table with read-length-specific values: references/effective_genome_sizes.md
Many deepTools commands share these options:
Performance:
--numberOfProcessors, -p: Enable parallel processing (always use available cores)max / max/2: Supported values for --numberOfProcessors; useful under schedulers because recent deepTools releases detect CPU affinity more carefully--region: Process specific regions for testing (e.g., chr1:1-1000000)Read Filtering:
--ignoreDuplicates: Remove PCR duplicates (recommended for most analyses)--minMappingQuality: Filter by alignment quality (e.g., --minMappingQuality 10)--minFragmentLength / --maxFragmentLength: Fragment length bounds--samFlagInclude / --samFlagExclude: SAM flag filteringRead Processing:
--extendReads: Extend to fragment length (ChIP-seq: YES, RNA-seq: NO)--centerReads: Center at fragment midpoint for sharper signalsAlways validate files first using scripts/validate_files.py to check:
--region chr1:1-10000000 for parameter testing--extendReads 200--ignoreDuplicates in most cases--ignoreDuplicates after GC correction--filterRNAstrand forward/reverse for common dUTP-style stranded libraries; confirm library orientation before interpreting strand labels--ATACshift--ATACshift is equivalent to --shift 4 -5 5 -4 and filters to properly paired fragments--numberOfProcessors 8 (or available cores)BAM index missing:
samtools index input.bam
Out of memory:
Process chromosomes individually using --region:
bamCoverage --bam input.bam -o chr1.bw --region chr1
Slow processing:
Increase --numberOfProcessors and/or increase --binSize
bigWig files too large:
Increase bin size: --binSize 50 or larger
Run validation script to identify issues:
python scripts/validate_files.py --bam *.bam --bed regions.bed
Common errors and solutions explained in script output.
This skill includes comprehensive reference documentation:
Complete documentation of all deepTools commands organized by category:
bigwigAverage)Each tool includes:
Use this reference when: Users ask about specific tools, parameters, or detailed usage.
Complete workflow examples for common analyses:
Use this reference when: Users need complete analysis pipelines or workflow examples.
Comprehensive guide to normalization methods:
Use this reference when: Users ask about normalization, comparing samples, or which method to use.
Effective genome size values and usage:
Use this reference when: Users need genome size for RPGC normalization or GC bias correction.
Validates BAM, bigWig, and BED files for deepTools analysis. Checks file existence, indices, and format.
Usage:
python scripts/validate_files.py --bam sample1.bam sample2.bam \
--bed peaks.bed --bigwig signal.bw
When to use: Before starting any analysis, or when troubleshooting errors.
Generates customizable bash script templates for common deepTools workflows.
Available workflows:
chipseq_qc: ChIP-seq quality controlchipseq_analysis: Complete ChIP-seq analysisrnaseq_coverage: Strand-specific RNA-seq coverageatacseq: ATAC-seq with Tn5 correctionUsage:
# List workflows
python scripts/workflow_generator.py --list
# Generate workflow
python scripts/workflow_generator.py chipseq_qc -o qc.sh \
--input-bam Input.bam --chip-bams "ChIP1.bam ChIP2.bam" \
--genome-size 2913022398 --threads 8
# Run generated workflow
chmod +x qc.sh
./qc.sh
When to use: Users request standard workflows or need template scripts to customize.
Quick reference card with most common commands, effective genome sizes, and typical workflow pattern.
When to use: Users need quick command examples without detailed documentation.
scripts/validate_files.pyscripts/workflow_generator.pyreferences/tools_reference.md"Convert BAM to bigWig":
"Check ChIP quality":
"Create heatmap":
"Compare samples":
When users need detailed information:
references/tools_reference.mdreferences/workflows.md for complete analysis pipelinesreferences/normalization_methods.md for method selectionreferences/effective_genome_sizes.mdUser: "I need to analyze my ChIP-seq data"
Response approach:
User: "Which normalization should I use?"
Response approach:
references/normalization_methods.md selection guideUser: "Create a heatmap around TSS"
Response approach:
--numberOfProcessors to available cores--region for parameter testing