PORECHOP(1)
β¨ PORECHOP β¨
okay bestie, welcome to porechop β the manual page, but make it a group chat π this is a tool for finding adapters in Oxford Nanopore reads, trimming them off the ends and splitting reads that have adapters hiding in the middle. it's giving βοΈπ§¬ and honestly? iconic.
π SYNOPSIS π
porechop [-h] -i INPUT [-o OUTPUT] [--format
{auto,fasta,fastq,fasta.gz,fastq.gz}] [-v VERBOSITY] [-t THREADS]
[--version] [-b BARCODE_DIR] [--barcode_threshold BARCODE_THRESHOLD]
[--barcode_diff BARCODE_DIFF] [--require_two_barcodes] [--untrimmed]
[--discard_unassigned] [--adapter_threshold ADAPTER_THRESHOLD]
[--check_reads CHECK_READS] [--scoring_scheme SCORING_SCHEME]
[--end_size END_SIZE] [--min_trim_size MIN_TRIM_SIZE] [--extra_end_trim
EXTRA_END_TRIM] [--end_threshold END_THRESHOLD] [--no_split]
[--discard_middle] [--middle_threshold MIDDLE_THRESHOLD]
[--extra_middle_trim_good_side EXTRA_MIDDLE_TRIM_GOOD_SIDE]
[--extra_middle_trim_bad_side EXTRA_MIDDLE_TRIM_BAD_SIDE]
[--min_split_read_size MIN_SPLIT_READ_SIZE]
like yes, that's a lot of brackets, breathe, we'll get through it together π«Ά
πΈ DESCRIPTION πΈ
so basically: Porechop is a tool for finding adapters in Oxford Nanopore reads, trimming them from the ends and splitting reads with internal adapters. that's the whole vibe. adapters in? adapters out. β¨
π OPTIONS π
π¦ optional arguments
-h,--helpβ shows this help message and then dips. exit stage left. πͺ
π Main options
-i INPUT,--input INPUTβ FASTA/FASTQ of input reads, or a directory which will be recursively searched for FASTQ files. this one is required, bestie, no input no output, periodt.-o OUTPUT,--output OUTPUTβ filename for FASTA or FASTQ of trimmed reads. if you don't set it, the trimmed reads get printed tostdoutinstead. no pressure. π--format {auto,fasta,fastq,fasta.gz,fastq.gz}β output format for the reads. if it'sauto, the format will be chosen based on the output filename or the input read format (default:auto). she'll figure it out herself, she's smart like that. π§ β¨-v VERBOSITY,--verbosity VERBOSITYβ level of progress information:0= none,1= some,2= lots,3= full. the output will go tostdoutif reads are saved to a file andstderrif reads are printed tostdout(default:1). pick your yap level π£οΈ-t THREADS,--threads THREADSβ number of threads to use for adapter alignment (default:4). give her more cores, she'll go faster π₯--versionβ show program's version number and exit. short and sweet, we love a queen who knows herself π
π Barcode binning settings
control the binning of reads based on barcodes (i.e. barcode demultiplexing). sorting the girlies into their correct friend groups, fr fr.
-b BARCODE_DIR,--barcode_dir BARCODE_DIRβ reads will be binned based on their barcode and saved to separate files in this directory. incompatible with--outputβ οΈ pick a lane, bestie.--barcode_threshold BARCODE_THRESHOLDβ a read must have at least this percent identity to a barcode to be binned (default:75.0).--barcode_diff BARCODE_DIFFβ if the difference between a read's best barcode identity and its second-best barcode identity is less than this value, it will not be put in a barcode bin (to exclude cases which are too close to call) (default:5.0). she's not gonna guess, that's messy π--require_two_barcodesβ reads will only be put in barcode bins if they have a strong match for the barcode on both their start and end. default behaviour: a read can be binned with a match at its start or end. stricter queen energy π--untrimmedβ bin reads but do not trim them (appropriate if reads are to be used with Nanopolish). default is to trim the reads. sometimes you keep the whole fit on, iykyk π--discard_unassignedβ discard unassigned reads (instead of creating a"none"bin) (default:False). no bin, no home, no problem π
π Adapter search settings
control how the program determines which adapter sets are present.
--adapter_threshold ADAPTER_THRESHOLDβ an adapter set has to have at least this percent identity to be labelled as present and trimmed off (0to100) (default:90.0).--check_reads CHECK_READSβ this many reads will be aligned to all possible adapters to determine which adapter sets are present (default:10000). she does her research first, obviously π--scoring_scheme SCORING_SCHEMEβ comma-delimited string of alignment scores: match, mismatch, gap open, gap extend (default:3,-6,-5,-2). yes those are negatives, no we're not scared of them π«Ά
π End adapter settings
control the trimming of adapters from read ends. snip snip βοΈ
--end_size END_SIZEβ the number of base pairs at each end of the read which will be searched for adapter sequences (default:150).--min_trim_size MIN_TRIM_SIZEβ adapter alignments smaller than this will be ignored (default:4). tiny matches don't count, we don't do micro-drama π--extra_end_trim EXTRA_END_TRIMβ this many additional bases will be removed next to adapters found at the ends of reads (default:2).--end_threshold END_THRESHOLDβ adapters at the ends of reads must have at least this percent identity to be removed (0to100) (default:75.0).
π§ Middle adapter settings
control the splitting of read from middle adapters. the drama in the middle of the read, we handle it β¨
--no_splitβ skip splitting reads based on middle adapters. default: split reads when an adapter is found in the middle. sometimes you just let it be, no cap.--discard_middleβ reads with middle adapters will be discarded. default: reads with middle adapters are split. note that this option is on by default when outputting reads into barcode bins π--middle_threshold MIDDLE_THRESHOLDβ adapters in the middle of reads must have at least this percent identity to be found (0to100) (default:85.0).--extra_middle_trim_good_side EXTRA_MIDDLE_TRIM_GOOD_SIDEβ this many additional bases will be removed next to middle adapters on their"good"side (default:10). good side stays winning π--extra_middle_trim_bad_side EXTRA_MIDDLE_TRIM_BAD_SIDEβ this many additional bases will be removed next to middle adapters on their"bad"side (default:100). the bad side gets the big chop π--min_split_read_size MIN_SPLIT_READ_SIZEβ post-split read pieces smaller than this many base pairs will not be outputted (default:1000). too smol, no thanks π
β AUTHOR β
this manpage was written by Andreas Tille for the Debian distribution and can be used for any other usage of the program. thank you andreas, we appreciate you π«Ά
and that's the whole page, bestie!! you read all of it, that's main character energy fr fr π β¨
this was porechop version 0.2.3, from August 2018, living under the PORECHOP(1) name π bye bye, go trim some adapters π§¬βοΈπ
π¦ where this page comes from
- debian bookworm: porechop 0.2.4+dfsg-4 Β· GPL-3.0-or-later
- debian trixie: porechop 0.2.4+dfsg-6 Β· GPL-3.0-or-later
- ubuntu jammy: porechop 0.2.4+dfsg-3 Β· GPL-3.0-or-later
- ubuntu noble: porechop 0.2.4+dfsg-4 Β· GPL-3.0-or-later
- ubuntu resolute: porechop 0.2.4+dfsg-6 Β· GPL-3.0-or-later
- ubuntu stonking: porechop 0.2.4+dfsg-9 Β· GPL-3.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms