preprocess_annotation
Collapse a multi-isoform GTF/GFF into simple per-gene models, optionally filtering isoforms by RNA-seq expression, so the later steps target one well-defined region per gene.
crisprware preprocess_annotation -g tests/test_data/ce11/chrIII_ce11.ncbiRefSeq.gtf \
-m metagene consensus longest shortest
chrIII_ce11.ncbiRefSeq/
chrIII_ce11.ncbiRefSeq_meta.gtf # metagene: union of all exons
chrIII_ce11.ncbiRefSeq_consensus.gtf # exons shared by every isoform
chrIII_ce11.ncbiRefSeq_longestCDS.gtf # longest-CDS isoform per gene
chrIII_ce11.ncbiRefSeq_shortestCDS.gtf # shortest-CDS isoform per gene
chrIII_ce11.ncbiRefSeq_genes_without_consensus_model.txt
Options you reach for
-m/--modelmetagene consensus longest shortest– which models to emit (any subset).RNA-seq filter:
-t/--tpm_files quant.sf ...(Salmon / Kallisto / FLAIR), then--median,--mean,--min,--maxcutoffs, or-n/--top_nto keep the N highest-expressed isoforms per gene.dCas targeting:
--tss_window <up> <down>/--tes_window <up> <down>emit BED windows around the TSS / TES for CRISPRi/a.
Note
Feed the model you choose to generate_guides -k (restrict guides to it) and to rank_guides -t
(group output per gene/transcript). Make sure the GTF and any TPM files share transcript IDs.