
安装目前的R包试试吧!这里我们强调R版,因为大多数人的使用原因!

setwd("D:\\KS项目\\公众号文章\\liana单细胞通讯分析框架介绍")#安装和加载一些包library(Seurat)library(dplyr)library(tidyverse)remotes::install_github('saezlab/liana')library(liana)#需要注意的是,我本地电脑用remotes::install_github很费劲且没有成功#所以下载安装包本地安装,然后可能需要一些依赖包,同样的下载本地安装即可packageVersion('liana')[1] '0.1.14’看看资源和分析方法,庄闲和游戏app都挺全,常见的不常见的都在(这里的不常见仅指我的认知)。从两个层面来说,一些python的方法经过了R的转化,可以说能在R里面运行cellphonedb了,对于不熟悉python的小伙伴是很友好的!
liana::show_resources()# [1] "Default" "Consensus" "Baccin2019" "CellCall" # [5] "CellChatDB" "Cellinker" "CellPhoneDB" "CellTalkDB" # [9] "connectomeDB2020" "EMBRACE" "Guide2Pharma" "HPMR" # [13] "ICELLNET" "iTALK" "Kirouac2010" "LRdb" # [17] "Ramilowski2015" "OmniPath" "MouseConsensus" liana::show_methods()# [1] "connectome" "logfc" "natmi" "sca" "cellphonedb" # [6] "cytotalk" "call_squidpy" "call_cellchat" "call_connectome" "call_sca" # [11] "call_italk" "call_natmi"
运行下分析,提供单细胞seurat obj或者SingleCellExperiment obj即可,可以指定方法和resource。
{jz:field.toptypename/}##load dataload("C:/Users/tq199/Desktop/fsdownload/scRNA_Y16.Rdata")Idents(scRNA_Y16) <- 'celltype'##run analysisliana_test <- liana_wrap(scRNA_Y16, idents_col = 'celltype')# Expression from the `RNA` assay will be used# Running LIANA with `celltype` as labels!# LIANA: LR summary stats calculated!# Now Running: Natmi# Now Running: Connectome# Now Running: Logfc# Now Running: Sca# Now Running: Cellphonedb# |============================================================== |100% ~0 s remaining liana_test <- liana_test %>%liana_aggregate(aggregate_how = "magnitude")#====================================================================================liana_cpdb <- liana_wrap(scRNA_Y16, idents_col = 'celltype', method = "cellphonedb",resource = c('CellPhoneDB'))liana_cpdb_sig <- liana_cpdb[liana_cpdb$pvalue <= 0.05,]liana_cpdb_sig$inter <- paste0(liana_cpdb_sig$source,"_",liana_cpdb_sig$target)table(liana_cpdb_sig$inter)图片
可视化就很简单了:
#可视化library(ggplot2)library(RColorBrewer)ggplot(liana_cpdb_sig,aes(inter,LRpairs))+ geom_point(aes(size= -log10(pvalue+0.00001), color=lr.mean))+ geom_point(aes(size= -log10(pvalue+0.00001)), shape=21,stroke=1)+ theme(axis.text.x = element_text(angle = 90, hjust = 1))+ scale_color_gradientn(colours = RColorBrewer::brewer.pal(n = 10, name = "Spectral"))
图片
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报。