Jump to content

MACS (software)

From Wikipedia, the free encyclopedia
Model-based Analysis for ChIP-Seq (MACS)
Original author(s)Yong Zhang, Tao Liu, et al. (original)
Tao Liu et al. (MACS2/3)
Developer(s)Tao Liu and contributors
Initial release2008; 17 years ago (2008)
Stable release
3.0.3 / 20 February 2025; 2 months ago (2025-02-20)
Written inPython, C
Operating systemCross-platform (Linux, macOS, Windows via WSL)
TypeBioinformatics software, Peak calling
LicenseBSD 3-Clause
Websitegithub.com/macs3-project/MACS

Model-based Analysis of ChIP-Seq (MACS) is a bioinformatics algorithm primarily designed to identify genomic regions enriched with reads from chromatin immunoprecipitation sequencing (ChIP-seq) experiments.[1] Originally published in 2008 by Yong Zhang, Tao Liu, and colleagues, MACS introduced a novel modeling approach to improve the detection of protein binding sites by accounting for the characteristic shift in read distributions on the forward and reverse DNA strands.[2] It has been cited over 17,000 times, becoming a standard tool in epiegenetics analyses, [2] particularly for identifying narrow peaks associated with transcription factor binding sites or H3K4me3 histone modifications.[3] The software has evolved through major versions, MACS2 and the currently developed MACS3. MACS is open-source software distributed under the permissive BSD 3-Clause License.

Methodology

[edit]

MACS analyzes mapped read data from ChIP-Seq experiments, often comparing a ChIP sample enriched for a specific protein binding to a control sample (e.g., input DNA or IgG immunoprecipitation), if available, to distinguish genuine enrichment from background noise and biases.

A key innovation in MACS is its model for the spatial distribution of sequencing reads around binding sites. In a typical ChIP-Seq experiment, reads map to the ends of the DNA fragments generated during immunoprecipitation. This results in clusters of reads mapping to the forward strand upstream of the binding site and clusters mapping to the reverse strand downstream. MACS empirically estimates the average distance, d, between the modes of these forward and reverse strand read distributions. It then shifts all reads by d/2 towards the interior of the fragment, effectively centering the signal at the putative binding site before identifying peaks.

To assess the significance of signal enrichment at any given genomic location, MACS models the background read count using a Poisson distribution with dynamic parameter λlocal. That is, instead of using a constant value of λ, λlocal values are allowed to vary along the genome. This model considers local biases by comparing the read count in a candidate peak region to the read count in larger flanking regions (e.g., 1 kb, 5 kb, 10 kb) or, preferably, to the scaled read count in the same region (λregion) within the control sample. A p-value is calculated based on the Poisson model, indicating the probability of observing the ChIP read count given the estimated background level. It also adjusts for sequencing depth differences by linearly scaling down the larger sample (default behavior) or scaling up the smaller sample.To control for multiple testing across the genome, MACS calculates a False discovery rate (FDR) for the identified peaks. This is often done by swapping the ChIP and control samples and determining the number of peaks called under these null conditions.

Later versions extended the methodology to better handle paired-end sequencing data and included options specifically for calling broader regions of enrichment,[4] such as those associated with certain histone modifications, often by grouping nearby significant regions.

Development

[edit]

The original version was re-written by Tao Liu and released as MACS 2. Implemented in Python, it offered improved command-line usability, better handling of various input formats, specific modes for paired-end data, and algorithms for identifying broad peaks ('--broad' option). MACS2 became the de facto standard version for many years. The current iteration, MACS 3.0, builds upon MACS2, refactoring the code, consolidating functionalities, and potentially adding new features such as variant calling from ChIP-seq data (callvar subcommand).[5]

Impact

[edit]

MACS is one of the most highly cited and widely adopted peak-calling algorithms in the field of genomics.[2] Its approach to modeling ChIP-Seq data characteristics significantly improved the accuracy and resolution of binding site detection compared to earlier methods based solely on read counts in fixed windows.[6] It remains a benchmark tool for new methods and assays,[7][8] and it is frequently integrated into standardized analysis pipelines and platforms like Galaxy, Cistrome, and Pluto Bio.[9][10][11]

References

[edit]
  1. ^ Feng, Jianxing; Liu, Tao; Qin, Bo; Zhang, Yong; Liu, Xiaole Shirley (2012-09-01). "Identifying ChIP-seq enrichment using MACS". Nature Protocols. 7 (9): 10.1038/nprot.2012.101. doi:10.1038/nprot.2012.101. PMC 3868217. PMID 22936215.
  2. ^ a b c Zhang, Yong; Liu, Tao; Meyer, Clifford A; Eeckhoute, Jérôme; Johnson, David S; Bernstein, Bradley E; Nusbaum, Chad; Myers, Richard M; Brown, Myles; Li, Wei; Liu, X Shirley (2008-09-17). "Model-based Analysis of ChIP-Seq (MACS)". Genome Biology. 9 (9). doi:10.1186/gb-2008-9-9-r137. ISSN 1474-760X.
  3. ^ Thomas, Reuben; Thomas, Sean; Holloway, Alisha K; Pollard, Katherine S (2017-05-01). "Features that define the best ChIP-seq peak calling algorithms". Briefings in Bioinformatics. 18 (3): 441–450. doi:10.1093/bib/bbw035. ISSN 1467-5463.
  4. ^ Beacon, Tasnim H.; Delcuve, Geneviève P.; López, Camila; Nardocci, Gino; Kovalchuk, Igor; van Wijnen, Andre J.; Davie, James R. (2021-07-08). "The dynamic broad epigenetic (H3K4me3, H3K27ac) domain as a mark of essential genes". Clinical Epigenetics. 13 (1). doi:10.1186/s13148-021-01126-1. ISSN 1868-7075.
  5. ^ "callvar — MACS3 3.0.1 documentation". macs3-project.github.io. Retrieved 2025-05-15.
  6. ^ Thomas, Reuben; Thomas, Sean; Holloway, Alisha K.; Pollard, Katherine S. (2017-05-01). "Features that define the best ChIP-seq peak calling algorithms". Briefings in Bioinformatics. 18 (3): 441–450. doi:10.1093/bib/bbw035. PMC 5429005. PMID 27169896.
  7. ^ Jeon, Hyeongrin; Lee, Hyunji; Kang, Byunghee; Jang, Insoon; Roh, Tae-Young (2020-12-01). "Comparative analysis of commonly used peak calling programs for ChIP-Seq analysis". Genomics & Informatics. 18 (4): e42. doi:10.5808/GI.2020.18.4.e42. PMC 7808876. PMID 33412758.
  8. ^ Nooranikhojasteh, Amin; Tavallaee, Ghazaleh; Orouji, Elias (2024-11-15), Benchmarking Peak Calling Methods for CUT&RUN, bioRxiv, doi:10.1101/2024.11.13.622880, retrieved 2025-05-15
  9. ^ "Choosing between MACS2 and SEACR for peak calling with epigenomics datasets". help.pluto.bio. Retrieved 2025-05-15.
  10. ^ Liu, Tao; Ortiz, Jorge A.; Taing, Len; Meyer, Clifford A.; Lee, Bernett; Zhang, Yong; Shin, Hyunjin; Wong, Swee S.; Ma, Jian; Lei, Ying; Pape, Utz J.; Poidinger, Michael; Chen, Yiwen; Yeung, Kevin; Brown, Myles (2011-08-22). "Cistrome: an integrative platform for transcriptional regulation studies". Genome Biology. 12 (8). doi:10.1186/gb-2011-12-8-r83.
  11. ^ "Galaxy—MACS2 call peak". usegalaxy.org. Retrieved 2025-05-07.
[edit]