RF Compare allows comparing RF Fold-inferred secondary structures, with a reference of known secondary structures, reporting for each comparison the PPV (Positive Predictive Value, the fraction of basepairs present in the predicted structure that are also present in the reference structure) and the sensitivity (the fraction of base-pairs present in the reference structure that are also in the predicted structure).
Reference structures can be provided either in Vienna format (dot-bracket notation), or in CT format:

# Vienna format


The name of the sequence in the reference structure file must match the compared file's name (e.g. "Transcript#1" expects a file named "Transcript#1.ct" or "Transcript#1.db").
RF Compare can be invoked both on a single structure, or on an entire folder of RF Fold-predicted structure files. Structures can be provided either in CT or Vienna (dot-bracket) format.
Since version 2.5, RF Compare generates vector graphical reports (SVG format) for each structure, reporting the reference structure and the compared structure, with base-pairs colored according to their presence in both structures:

RF Compare plot


To list the required parameters, simply type:

$ rf-compare -h
Parameter Type Description
-r or --reference string Path to a file containing reference structures in Vienna format (dot-bracket)
-g or --img Enables generation of graphical comparison images
-o or --output-dir string Images output directory (Default: rf_compare/, requires -g)
-ow or --overwrite Overwrites output directory (if the specified path already exists)
-x or --relaxed Uses relaxed criteria (described in Deigan et al., 2009) to calculate PPV and sensitivity
-kn or --keep-noncanonical Keeps non-canonical basepairs in reference structure
-kp or --keep-pseudoknots Keeps pseudoknotted basepairs in reference structure
-kl or --keep-lonelypairs Keeps lonely basepairs (helices of length 1 bp) in reference structure
-i or --ignore-sequence Ignores sequence differences (e.g. SNVs) between the compared structures


When parameter --relaxed is specified, a basepair i-j is considered as present in the reference structure if any of the following pairs exist: i/j; i-1/j; i+1/j; i/j-1; i/j+1. For additional details, please refer to Deigan et al., 2009 (PMID: 19109441)