MACS2_FILTERDUP(1)

πŸ“¦
version 2.2.7.1 Β· 2 versions
, in ubuntu jammy

πŸ’– MACS2_FILTERDUP πŸ’–

okay bestie, welcome to macs2_filterdup β€” she's the dupe-cleaning queen of the MACS2 family, aka Model-based Analysis for ChIP-Sequencing. this is the page for the macs2 filterdup command and she is so ready to sort your reads out. 🧚✨


🌸 DESCRIPTION 🌸

so basically, here's the whole vibe β€” the usage line, verbatim, no cap:

macs2 filterdup [-h] -i IFILE [IFILE ...]
       [-f {AUTO,BAM,SAM,BED,ELAND,ELANDMULTI,ELANDEXPORT,BOWTIE,BAMPE,BEDPE}]
              [-g GSIZE] [-s TSIZE] [-p PVALUE] [--keep-dup KEEPDUPLICATES]
              [--buffer-size BUFFER_SIZE] [--verbose VERBOSE] [--outdir OUTDIR]
              [-o OUTPUTFILE] [-d]

that's the whole energy right there. filterdup reads your alignment files, deals with duplicate tags/pairs sitting at the exact same spot, and writes out a clean BED file (or just tells you the numbers, if you're in a dry-run mood). πŸ¦‹


✨ OPTIONS ✨

  • -h, --help β€” shows this help message and dips. the classic. πŸ’…
  • -i IFILE [IFILE ...], --ifile IFILE [IFILE ...] β€” your alignment file(s). if you pass multiple files like -t A B C, they all get read and combined into one big beautiful pile. warning bestie: pair-end data is not supposed to work with this command. also: this one is REQUIRED, no skipping. πŸ‘‘
  • -f {AUTO,BAM,SAM,BED,ELAND,ELANDMULTI,ELANDEXPORT,BOWTIE,BAMPE,BEDPE}, --format {AUTO,BAM,SAM,BED,ELAND,ELANDMULTI,ELANDEXPORT,BOWTIE,BAMPE,BEDPE} β€” tells the tool what format your tag file is in: "AUTO", "BED", "ELAND", "ELANDMULTI", "ELANDEXPORT", "SAM", "BAM", "BOWTIE", "BAMPE" or "BEDPE". the default AUTO option lets macs2 filterdup figure out the format all by herself (main character detective energy πŸ”). if you pick ELAND/ELANDMULTI/ELANDEXPORT/SAM/BAM/BOWTIE or BAMPE/BEDPE, pls go check the definition in the README file first. DEFAULT: "AUTO"
  • -g GSIZE, --gsize GSIZE β€” effective genome size. you can write it like 1.0e+9 or 1000000000, or use the cute shortcuts: 'hs' for human (2.7e9), 'mm' for mouse (1.87e9), 'ce' for C. elegans (9e7) and 'dm' for fruitfly (1.2e8). DEFAULT: hs 🌈
  • -s TSIZE, --tsize TSIZE β€” tag size. setting this overrides the auto detected tag size, like "no thank you, I know my own tag size." DEFAULT: Not set
  • -p PVALUE, --pvalue PVALUE β€” the pvalue cutoff for the binomial distribution test. DEFAULT: 1e-5 ⭐
  • --keep-dup KEEPDUPLICATES β€” this one controls how macs2 filterdup treats duplicate tags/pairs at the exact same location β€” meaning the same coordination and the same strand. here's the breakdown:
    • 'auto' makes macs2 filterdup calculate the maximum tags allowed at the exact same location based on binomal distribution, using the -p you gave as the pvalue cutoff;
    • 'all' keeps every tag (super useful if you literally just want to convert formats);
    • if you give it an integer, at most that number of tags will be kept at the same location.

also note: the MACS2 callpeak function uses KEEPDUPLICATES=1 as default. and one more thing β€” if you've used samtools or picard to flag reads as 'PCR/Optical duplicate' in bit 1024, MACS2 will still read them, even though those reads may be decided by MACS2 as duplicate later. Default: auto πŸ’€

  • --buffer-size BUFFER_SIZE β€” buffer size for incrementally increasing the internal array size that stores reads alignment information. in most cases you genuinely don't have to touch this parameter, bestie. but if your alignment has a large number of chromosomes/contigs/scaffolds, it's recommended to specify a smaller buffer size to decrease memory usage β€” fair warning tho, it will take longer time to read alignment files. the minimum memory requested for reading an alignment file is about # of CHROMOSOME * BUFFER_SIZE * 8 Bytes. DEFAULT: 100000
  • --verbose VERBOSE β€” sets the verbose level:
    • 0: only show critical message
    • 1: show additional warning message
    • 2: show process information
    • 3: show debug messages

if you want to know where those duplicate reads are hiding, use 3. DEFAULT: 2 πŸ™ˆ

  • --outdir OUTDIR β€” if specified, all output files get written to that directory instead. Default: the current working directory
  • -o OUTPUTFILE, --ofile OUTPUTFILE β€” output BED file name. if you don't specify one, it writes to standard output. note: if the input format is BAMPE or BEDPE, the output will be in BEDPE format. DEFAULT: stdout πŸŽ€
  • -d, --dry-run β€” when set, filterdup will only output numbers instead of writing output files. those numbers are: maximum allowable duplicates, total number of reads before filtering, total number of reads after filtering, and redundant rate. Default: not set πŸ”₯

lowkey important: this is the macs2 filterdup command living inside MACS2, and pair-end data is not supposed to work with it β€” that's not me being dramatic, that's just the facts. 🫢

and that's the whole page, bestie!! πŸ’œ this was macs2 filterdup 2.2.7.1, dated April 2022, and she ate, no crumbs. go filter those duplicates, you absolute legend. βœ¨πŸ‘‘πŸ¦‹πŸŒΈ

MACS2_FILTERDUP(1) β€” periodt. πŸ’…

πŸ“¦ where this page comes from