-
Notifications
You must be signed in to change notification settings - Fork 1
Analysis of potential of circulating miRNAs and organ‐organ communication
Shao, Xin edited this page Dec 24, 2024
·
4 revisions
To analyze the potential of circulating miRNAs and organ‐organ communication for the inferred miRNA-target interactions, we have incorporated a function get_miRTalk_circulating_score
.Step-by-step procedures are shown below:
[1] load the example data
> load(paste0(system.file(package = 'miRTalk'), "/extdata/example.rda"))
> dim(sc_data)
[1] 22898 515
> table(sc_celltype)
sc_celltype
Bcell Myeloid Stromal Tcell Tumor
83 38 23 54 317
[2] create miRTalk object using single-cell transcriptomics data
> obj <- create_miRTalk(sc_data = sc_data,
sc_celltype = sc_celltype,
species = "Human",
condition = rep("condition",length(sc_celltype)),
evbiog = evbiog,
risc = risc,
ritac = ritac)
Warning: The following features are not present in the object: AGO2, not searching for symbol synonyms
[3] Find highly variable target genes with DEGs and HVGs with find_hvtg
> obj <- find_hvtg(object = obj)
[4] Find expressed miRNAs among all cells and generate background distribution for permutation test with find_miRNA
.
> obj <- find_miRNA(object = obj,
mir_info = mir_info,
mir2tar = mir2tar)
[5] Infer cell-cell communication mediated by EV-derived miRNAs from senders to receivers
> obj <- find_miRTalk(obj, if_doParallel = F)
[condition]
[++++++++++++++++++++++++++++++] Finished:100% time:00:04:57
> obj
An object of class miRTalk
460 EV-derived miRNA-target interactions
[6] Analysis of potential of circulating miRNAs and organ‐organ communication
> res_circulating <- get_miRTalk_circulating_score(obj)
> str(res_circulating)
'data.frame': 19 obs. of 3 variables:
$ miRNA : chr "hsa-miR-146a-5p" "hsa-miR-146a-5p" "hsa-miR-146a-5p" "hsa-miR-146a-5p" ...
$ score : num 0.661 0.661 0.661 0.661 1 ...
$ celltype_receiver: chr "condition_Tcell" "condition_Tumor" "condition_Bcell" "condition_Myeloid" ...
# plotting
> res_circulating$celltype_receiver <- paste0(res_circulating$condition,"_",res_circulating$celltype_receiver)
> res_circulating <- unique(res_circulating[,c("miRNA","score","celltype_receiver")])
> res_cir_plot <- reshape2::dcast(data = res_circulating, formula = miRNA ~ celltype_receiver, value.var = "score", fun.aggregate = mean, fill = 0)
> rownames(res_cir_plot) <- res_cir_plot$miRNA
> res_cir_plot <- res_cir_plot[,-1]
> heat_col <- viridis::viridis(n = 256, alpha = 1, begin = 0, end = 1, option = "D")
> heatmaply::heatmaply(x = as.matrix(res_cir_plot), colors = heat_col, limits = c(0,1),dendrogram = "none", margins = c(60,100,40,20),
titleX = FALSE, main = "Circulating potential", branches_lwd = 0.1, fontsize_row = 10, fontsize_col = 10, labCol =
colnames(res_cir_plot), labRow = rownames(res_cir_plot), heatmap_layers = theme(axis.line=element_blank()))