Aufiero / circRNAprofiler

10 stars 3 forks source link

Merging circRNAs with similar BS junctions #1

Closed mw-neuro closed 4 years ago

mw-neuro commented 4 years ago

Hi Simon,

Thanks for making this great open-source software!

Here is one issue I am currently having with analysis of circRNAs:

After merging back-spliced junctions from three different circRNA programs (circexplorer2 [ce], mapsplice [ms] and CIRI2 [ot]) I end up with a merge file with zero overlap of circRNAs detected by circexplorer2 (see Venn Diagram below).

Rplot02

When going through the mergeBSjunction output though I can see many circRNAs with very similar annotation, in many cases only 1 bp difference (see example below). It seems for these cases these are the same circRNAs that have been detected but due to differences in the detection software have slightly different annotations.

Screenshot 2020-02-24 at 2 41 25 PM

Is there any way to modify merging of circRNAs so that circRNAs can be merged even when there is not an exact match i.e. maybe matching within a range of +/-10 to 20 bps? Without this option, currently it's not really possible to properly merge and filter circRNAs found by multiple programs (at least when use circexplorer2).

Thanks in advance for your help!!

Aufiero commented 4 years ago

Hi,

thanks for pointing this out. As you said it is due to the detection software. I will implement an additional function to fix this. In the meantime you can try to fix the coordinates by adding 1 to the coordinates in endDownBSE column for all the circRNAs detected by circExplorer2 and then merge using mergeBSJunctions.

E.g. backSplicedJunctionsFixed <- backSplicedJunctions %>% dplyr::mutate(endDownBSE = ifelse(.data$tool =="ce", .data$endDownBSE+1, .data$endDownBSE))

mergedBSJunctions <- mergeBSJunctions(backSplicedJunctionsFixed, gtf)

Let me know if this solves your problem. Simona

mw-neuro commented 4 years ago

Thanks very much for the quick reply! Will try this method :)