Package: circmimi
CircMiMiA package for constructing CLIP-seq data-supported circRNA-miRNA-mRNA interactionsTable of ContentsRequirementsInstallationQuick StartUsageGenerate the referencesParametersAvailable species and sources(Optional) Check the circRNAsParametersInput fileOutput filechecking.results.tsvPredict the interactions between circRNA-miRNA-mRNAParametersInput fileOutput filessummary_list.tsvall_interactions.miRNA.tsv(Optional) Visualize the interactionsParametersImport the XGMML file into CytoscapeExampleRequirementsPython (3.6 or above)External toolsbedtools (2.29.0) (https://github.com/arq5x/bedtools2)miranda (aug2010, 3.3a) (http://www.microrna.org/microrna/getDownloads.do)blat (https://genome.ucsc.edu/FAQ/FAQblat.html)blast (https://blast.ncbi.nlm.nih.gov/Blast.cgi)InstallationThe recommended way is viaconda, a package and environment management system. (https://docs.conda.io/en/latest/)You may installcircmimiby the following steps:$condacreate-ncircmimipython=3$condaactivatecircmimi
$pipinstallcircmimiFor the external tools, they can also be installed viacondawith thebioconda(https://bioconda.github.io/) channel:$condainstall-cbiocondabedtools=2.29.0mirandablatblastNow, you can try the following command to test the installation,$circmimi_tools--helpit should print out with the help messages.Quick StartGenerate the references$circmimi_toolsgenref--specieshsa--sourceensembl--version100refs/Check the circRNAs and do some pre-filtering (optional)$circmimi_toolschecking-rrefs/-icircRNAs.tsv-oout/-p5--dist10000$catout/checking.results.tsv|awk-F'\t''($9==1)&&($12==0)&&($16==1)'|cut-f'-5'>out/circRNAs.filtered.tsvPredict the interactions between circRNA-miRNA-mRNA$circmimi_toolsinteractions-rrefs/-iout/circRNAs.filtered.tsv-oout/-p5--miranda-sc175Note. Step 2. is optional, you may just input the raw "circRNAs.tsv".Visualize the interactions by creating a Cytoscape-acceptable XGMML file (optional)$circmimi_toolsvisualizeout/all_interactions.miRNA.tsvout/all_interactions.miRNA.xgmmlUsageGenerate the referencescircmimi_tools genref --species SPECIES --source SOURCE [--version RELEASE_VER] REF_DIRParametersParameterDescription--species SPECIESAssign the species for references. Use the species code for SPECIES.[required]--source SOURCEAvailable values for SOURCE: "ensembl", "ensembl_plants", "ensembl_metazoa", "gencode".[required]--version RELEASE_VERThe release version of the SOURCE. For examples,  "98" for ("hsa", "ensembl"), "M24" for ("mmu", "gencode"). If the version is not specified, the latest one will be used.REF_DIRThe directory for all generated references.Available species and sourcesCodeNameEGEPEMMBMTBMDBECRathArabidopsis thalianaVVVbmoBombyx moriVVVbtaBos taurusVVVcelCaenorhabditis elegansVVVVcfaCanis familiarisVVVVcgrCricetulus griseusVVVdreDanio rerioVVVdmeDrosophila melanogasterVVVggaGallus gallusVVVVhsaHomo sapiensVVVVVVmmuMus musculusVVVVVVosaOryza sativaVVVolaOryzias latipesVVVoarOvis ariesVVVrnoRattus norvegicusVVVVsscSus scrofaVVVtguTaeniopygia guttataVVVxtrXenopus tropicalisVVVGene annotationE: Ensembl (https://www.ensembl.org/index.html)G: Gencode (https://www.gencodegenes.org/)EP: Ensembl Plants (https://plants.ensembl.org/index.html)EM: Ensembl Metazoa (https://metazoa.ensembl.org/index.html)Database for miRNAsMB: miRBase (v22) (http://www.mirbase.org/)Databases for miRNA-mRNA interactionsMTB: miRTarBase (v7.0)(http://mirtarbase.mbc.nctu.edu.tw/php/index.php)(https://mirtarbase.cuhk.edu.cn/~miRTarBase/miRTarBase_2019/php/index.php)MDB: miRDB (v6.0) (http://mirdb.org/)Databases for miRNA-mRNA interactions and RBP-related dataECR: ENCORI (http://starbase.sysu.edu.cn/index.php)(Optional) Check the circRNAscircmimi_tools checking -r REF_DIR -i CIRC_FILE [-o OUT_PREFIX] [-p NUM_PROC] [--dist INTEGER]ParametersParameterDescription-r, --ref REF_DIRThe directory of the pre-genereated reference files.[required]-i, --circ CIRC_FILEThe file of circRNAs.[required]-o, --out-prefix OUT_PREFIXThe prefix for the output filenames. (default: "./")-p, --num_proc NUM_PROCThe number of processors.-d, --dist INTEGERThe distance range for RCS checking. (default: 10000)Input fileThe input file(CIRC_FILE) is a TAB-separated file with the following columns:#ColumnDescription1chrChromosome name2pos1One of the positions of the circRNA junction site3pos2Another position of the circRNA junction site4strand+ / -5circ_id(Optional) User-specified name/id of the circRNANote.The chromosome name must be the same as the name in the SOURCE.For example, "1" for "ensembl", and "chr1" for "gencode".Output filechecking.results.tsv#ColumnDescription1chrChromosome name2pos1One of the position of the circRNA junction site3pos2Another position of the circRNA junction site4strand+ / -5circ_idThe user-specified or auto-generated name/id of the circRNA.6host_geneThe gene symbol of the host gene7donor_site_at_the_annotated_boundary'1' if the donor site of the circRNA is at the annotated exon boundary. Otherwise '0'.8acceptor_site_at_the_annotated_boundary'1' if the acceptor site of the circRNA is at the annotated exon boundary. Otherwise '0'.9donor_acceptor_sites_at_the_same_transcript_isoform'1' if the donor and acceptor are at the same annotated transcript isoform. Otherwise '0'.10with an alternative co-linear explanation'1' if the merged flanking sequence of the circRNA junction sites has an co-linear explanation. Otherwise '0'.11with multiple_hits'1' if the merged flanking sequence of the circRNA junction sites is with multiple hits. Otherwise '0'.12alignment ambiguity (with an alternative co-linear explanation or multiple hits)'1' if the merged flanking sequence of the circRNA junction sites is with an alternative co-linear explanation or with multiple hits. Otherwise '0'.13#RCS across flanking sequencesThe number of RCS pairs of which across flanking sequences.14#RCS within the flanking sequence (the donor side)The number of RCS pairs of which within the flanking sequences of donor site.15#RCS within the flanking sequence (the acceptor side)The number of RCS pairs of which within the flanking sequences of acceptor site.16#RCS_across-#RCS_within>=1 (yes: 1; no: 0)Predict the interactions between circRNA-miRNA-mRNAcircmimi_tools interactions -r REF_DIR -i CIRC_FILE [-o OUT_PREFIX] [-p NUM_PROC] \
[--miranda-sc SCORE] [--miranda-en ENERGY] [--miranda-scale SCALE] [--miranda-strict] [--miranda-go X] [--miranda-ge Y]ParametersParameterDescription-r, --ref REF_DIRThe directory of the pre-genereated reference files.[required]-i, --circ CIRC_FILEThe file of circRNAs.[required]-o, --out-prefix OUT_PREFIXThe prefix for the output filenames. (default: "./")-p, --num_proc NUM_PROCThe number of processors.The miRanda parameters are also available (seethe manual of miRanda).ParametersDescription--miranda-sc SCORESet the alignment score threshold to SCORE. Only alignments with scores >= SCORE will be used for further analysis. (default: 155)--miranda-en ENERGYSet the energy threshold to ENERGY. Only alignments with energies <= ENERGY will be used for further analysis. A negative value is required for filtering to occur. (default: -20)--miranda-scale SCALESet the scaling parameter to SCALE. This scaling is applied to match / mismatch scores in the critical 7bp region near the 5' end of the microRNA. Many known examples of miRNA:Target duplexes are highly complementary in this region. This parameter can be thought of as a contrast function to more effectively detect alignments of this type. (default: 4.0)--miranda-strictRequire strict alignment in the seed region (offset positions 2-8). This option prevents the detection of target sites which contain gaps or non-cannonical base pairing in this region.--miranda-go XSet the gap-opening penalty to X for alignments. This value must be negative. (default: -4.0)--miranda-ge YSet the gap-extend penalty to Y for alignments. This value must be negative. (default: -9.0)Input fileThe input file(CIRC_FILE) is a TAB-separated file with the following columns:#ColumnDescription1chrChromosome name2pos1One of the position of the circRNA junction site3pos2Another position of the circRNA junction site4strand+ / -5circ_id(Optional) User-specified name/id of the circRNANote.The chromosome name must be the same as the name in the SOURCE.For example, "1" for "ensembl", and "chr1" for "gencode".Output filesThere would output two main files:"summary_list.tsv""all_interactions.miRNA.tsv"summary_list.tsvThe summary list contains the counts of interactions and some checking results of the circRNAs.#ColumnDescription1chrChromosome name2pos1One of the position of the circRNA junction site3pos2Another position of the circRNA junction site4strand+ / -5circ_idThe user-specified or auto-generated name/id of the circRNA.6host_geneThe gene symbol of the host gene7#circRNA_miRNACount for the circRNA-miRNA interactions.8#circRNA_mRNACount for the miRNAs-mediated circRNA-mRNA interactions.9#circRNA_miRNA_mRNACount for the circRNA-miRNA-mRNA interactions.10pass'yes' if the circRNA passing all of the checking items (column 11 to 15). Otherwise 'no'.11donor site not at the annotated boundary'1' if the donor site of the circRNA is NOT at the annotated exon boundary. Otherwise '0'.12acceptor site not at the annotated boundary'1' if the acceptor site of the circRNA is NOT at the annotated exon boundary. Otherwise '0'.13donor/acceptor sites not at the same transcript isoform'1' if the donor and acceptor are not at the same annotated transcript isoform. Otherwise '0'.all_interactions.miRNA.tsv#ColumnDescription1chrChromosome name2pos1One of the position of the circRNA junction site3pos2Another position of the circRNA junction site4strand+ / -5circ_idThe user-specified or auto-generated name/id of the circRNA.6host_geneHost gene of the circRNA7mirnaThe miRNA which may bind on the circRNA8max_scoreThe maximum binding score reported by miRanda9num_binding_sitesThe number of binding sites of the miRNA on the circRNA10cross_boundaryWhether if there are binding sites across the junction of the circRNA.11MaxAgoExpNumThe maximum number of supporting CLIP-seq experiments12num_AGO_supported_binding_sitesThe number of AGO-supported miRNA-binding sites13target_geneThe miRNA-targeted gene14miRTarBaseWhether if the miRNA-mRNA interaction is reported from miRTarBase.15miRDBWhether if the miRNA-mRNA interaction is reported from miRDB.16ENCORIWhether if the miRNA-mRNA interaction is reported from ENCORI.17category_1Whether if the circRNA-miRNA-mRNA interaction is of category 1.18category_2Whether if the circRNA-miRNA-mRNA interaction is of category 2.19category_3Whether if the circRNA-miRNA-mRNA interaction is of category 3.20p_valueP-value from the hypergeometric test for the circRNA-mRNA interaction.21bh_corrected_p_valueP-value corrected by the "Benjamini-Hochberg" method.22bonferroni_corrected_p_valueP-value corrected by the "Bonferroni" method.Note.For now, the ENCORI data are only provided for 'human' and 'mouse'.(Optional) Visualize the interactionscircmimi_tools visualize [options] IN_FILE OUT_FILEParametersParameterDescriptionIN_FILEInput the file "all_interactions.miRNA.tsv", which is the output file from 'interactions'.OUT_FILEThe output filename. The file extension should be ".xgmml" or ".xml", so that the Cytoscape could recognize this file as an XGMML network file.-1 INTcolumn key for circRNAs.-2 INTcolumn key for mediators.-3 INTcolumn key for mRNAs.--no-headerThis flag option should be speciefied if there are no headers in the IN_FILE.This command can generate a Cytoscape-executable file (.xgmml) for visualization of the input circRNA-miRNA-mRNA regulatory axes in Cytoscape.Import the XGMML file into CytoscapeTo do the visualization with Cytoscape(https://cytoscape.org/index.html), please refer to the followings:Open the Cytoscape.Import the XGMML file from [File] -> [Import] -> [Network from File...], and then choose the ".xgmml" file.By default, CircMiMi did not embed any layout in the XGMML file, but only nodes and edges which are all at the origin,
so that you may create your own layout by interest.Here, for example, we apply the built-in "Group Attributes Layout" with the column "data_type"(which equals to 'circRNA', 'mediator', or 'target_gene'). As you can see, the nodes are now separated and grouped by their "data_type".ExamplePlease see the "examples" directory.