乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      Dotplot可視化細(xì)節(jié)之如何計(jì)算百分比和表達(dá)量平均值

       健明 2024-09-11 發(fā)布于廣東

      前情提要

      單細(xì)胞數(shù)據(jù)分析里面最基礎(chǔ)的就是降維聚類分群,參考前面的例子:人人都能學(xué)會(huì)的單細(xì)胞聚類分群注釋  ,這個(gè)大家基本上問(wèn)題不大了,使用seurat標(biāo)準(zhǔn)流程即可,不過(guò)它默認(rèn)出圖并不好看,詳見(jiàn)以前我們做的投票:可視化單細(xì)胞亞群的標(biāo)記基因的5個(gè)方法,下面的5個(gè)基礎(chǔ)函數(shù)相信大家都是已經(jīng)爛熟于心了:

      • VlnPlot(pbmc, features = c("MS4A1", "CD79A"))
      • FeaturePlot(pbmc, features = c("MS4A1", "CD79A"))
      • RidgePlot(pbmc, features = c("MS4A1", "CD79A"), ncol = 1)
      • DotPlot(pbmc, features = unique(features)) + RotatedAxis()
      • DoHeatmap(subset(pbmc, downsample = 100), features = features, size = 3)

      上幾期的推文給大家分享了我對(duì)于用熱圖可視化及美化marker基因的內(nèi)容

      接下來(lái)一起來(lái)了解一下Dotplot可視化Marker基因吧。

      Dotplot結(jié)果圖解析

      在進(jìn)行細(xì)胞亞群注釋的時(shí)候,可以使用Dotplot可視化收集整理的基因集,來(lái)輔助我們進(jìn)行細(xì)胞亞群的判斷

      (PS : 可以看到我們收集整理的基因的特異性都非常好,絕大部分都有單細(xì)胞亞群的排他性 ,比如9群是CPA3代表的mast細(xì)胞,它在mast亞群里面的幾乎是百分百表達(dá),但是在其他亞群都是不表達(dá)!

      如果關(guān)注單個(gè)基因的話,也可以只查看單個(gè)基因在不同亞群的表達(dá)情況,在單細(xì)胞水平看指定基因的表達(dá)量差異情況分享的文章中就有對(duì)某個(gè)基因進(jìn)行可視化展示

      DotPlot(sce.all.int, features = c("MTIF2"), group.by = "celltype"

      (PS ; 因?yàn)?span style="color: rgb(152, 195, 121);font-family: Consolas, Monaco, Menlo, monospace;font-size: 12px;letter-spacing: normal;text-align: left;white-space-collapse: preserve;background-color: rgb(40, 44, 52);">MTIF2這個(gè)基因并不是已知的各個(gè)單細(xì)胞亞群特征基因,所以可以看到它很難有排他性,而且它即使是在肝細(xì)胞里面也就是30%的表達(dá)比例,只不過(guò)是肉眼看起來(lái)好像是跟前面的百分比一樣的效果,所以大家務(wù)必注意圖例!

      Dotplot結(jié)果圖上會(huì)展示出來(lái)Average Expressed以及Percent Expressed,及基因的平均表達(dá)量(點(diǎn)的顏色)以及表達(dá)的百分比(點(diǎn)的大?。?/strong>

      通過(guò)將繪圖結(jié)果保存為一個(gè)變量,可以看到里面的保存的用于畫圖的數(shù)值

      p = DotPlot(sce.all.int, features = c("MTIF2"), group.by = "celltype"

      View(p)

      其中data數(shù)據(jù)中就包含了Average Expressed、Percent Expressed以及Average Expressed scaled

      在推文務(wù)為有補(bǔ)于世 | 單細(xì)胞之DotPlot的表達(dá)量哪來(lái)的?整理了平均表達(dá)量Average Expressed的計(jì)算方法

      1. 簡(jiǎn)單嘗試計(jì)算平均表達(dá)量-Average Expressed:查看B細(xì)胞亞群里面MTIF2基因的平均表達(dá)量

      取出B細(xì)胞亞群,獲取B細(xì)胞亞群里面MTIF2基因原始表達(dá)矩陣,計(jì)算平均表達(dá)量

      #average expressed

      sce.B = sce.all.int[, sce.all.int$celltype %in% c( 'Bcell')]

      gene_expression <- sce.B[["RNA"]]$counts["MTIF2", ]

      # 計(jì)算平均表達(dá)量,忽略NA值
      average_expression <- mean(gene_expression/sce.B$nCount_RNA*10000, na.rm = TRUE)

      2. 計(jì)算基因在不同亞群里面的表達(dá)百分比Percent Expressed

      統(tǒng)計(jì)并整理基因在不同細(xì)胞亞群的表達(dá)與否情況,然后計(jì)算表達(dá)數(shù)量占全部細(xì)胞亞群數(shù)量的百分比

      #pct.express計(jì)算方式
      MTIF2 = sce.all.int@assays$RNA$data["MTIF2",]>0

      t(table(MTIF2,sce.all.int$celltype))

      data <- data.frame(
        CellType = c("Bcell""cycle""endothelial""epithelial""hepatocytes""macrophages""mast""myeloids""myofibroblasts""Tcell"),
        MTIF2_FALSE = c(3053, 1810, 3609, 1975, 6294, 5509, 186, 10335, 1131, 7414),
        MTIF2_TRUE = c(355, 411, 448, 446, 3040, 1154, 7, 1370, 144, 503)
      )

      # 計(jì)算每個(gè)細(xì)胞亞群中總細(xì)胞數(shù)
      data$TotalCells <- data$MTIF2_FALSE + data$MTIF2_TRUE

      # 計(jì)算每個(gè)細(xì)胞亞群中MTIF2的表達(dá)占比,并添加到data表格中
      data$PercentExpressed <- (data$MTIF2_TRUE / data$TotalCells)*100

      畫圖展示的labels中,x軸是我們選擇展示的基因,y軸identity是細(xì)胞亞群,點(diǎn)的大小是由pct.exp決定的,顏色是由avg.exp.scaled決定的

      關(guān)于avg.exp.scaled的計(jì)算沒(méi)有去嘗試,大家感興趣的可以看一下Dotplot函數(shù)的具體計(jì)算方式

      Dotplot常用參數(shù)

      除了輸入數(shù)據(jù)(object)、基因集(features)以及分組信息(group.by)和分割參數(shù)(split.by)這些常用參數(shù)外,還有一些和點(diǎn)的顏色大小以及scale范圍相關(guān)的參數(shù)

      點(diǎn)的顏色及縮放大小

      • cols: 繪圖顏色——可以是RColorBrewer包中的調(diào)色板名稱,也可以是自定義的漸變的兩種顏色,或者是定義多個(gè)漸變的三種以上顏色(如果設(shè)置了split.by)。

      • col.min: 縮放后平均表達(dá)的顏色最小閾值。

      • col.max: 縮放后平均表達(dá)的顏色最大閾值。

      • dot.min: 繪制最小點(diǎn)的細(xì)胞分?jǐn)?shù)(默認(rèn)為0),所有表達(dá)給定基因的細(xì)胞組少于此分?jǐn)?shù)的將不繪制點(diǎn)。
      • dot.scale: 氣泡大小的縮放比例,類似于cex參數(shù),默認(rèn)是6,可以通過(guò)這個(gè)參數(shù)調(diào)節(jié)各個(gè)氣泡大小之間差異程度
      • scale: 確定數(shù)據(jù)是否縮放,TRUE為默認(rèn)。
      • scale.by: 通過(guò)'size'或'radius'兩種方式縮放點(diǎn)的大小,默認(rèn)為"radius"。
      • scale.min: 設(shè)置縮放的下限,使用NA為默認(rèn)值。
      • scale.max: 設(shè)置縮放的上限,使用NA為默認(rèn)值。

      使用默認(rèn)參數(shù)繪圖

      具體繪圖及美化還是使用pbmc-3k的注釋分群后的示例數(shù)據(jù),使用FindAllMarkers查找并獲取top5的Marker基因進(jìn)行可視化

      #top5 marker基因獲取

      pbmc.markers <- FindAllMarkers(pbmc, only.pos = TRUE, min.pct = 0.25,  logfc.threshold = 0.25, verbose = FALSE)

      top5 = pbmc.markers %>% group_by(cluster) %>% top_n(n = 5, wt = avg_log2FC)

      g = unique(top5$gene)

      可以先看看直接使用默認(rèn)參數(shù),不調(diào)節(jié)展示的情況

      DotPlot(pbmc, features = g)

      可以看到features展示列全部擠在了一起,不便于閱讀。所以可以對(duì)采用參數(shù)傾斜展示基因,或者將基因和細(xì)胞亞群調(diào)換位置

      1. 調(diào)節(jié)features的排列角度

      DotPlot(pbmc, features = g) + RotatedAxis()

      2.將features和identity調(diào)換位置

      DotPlot(pbmc, features = g) + coord_flip()+ RotatedAxis()

      小結(jié)

      這期簡(jiǎn)單了解了一下Dotplot展示的Average Expressed以及Percent Expressed計(jì)算方式,以及Dotplot常用參數(shù)

      最后簡(jiǎn)單的使用默認(rèn)參數(shù)展示了top5的marker基因,使用參數(shù)傾斜展示基因,或者將基因和細(xì)胞亞群調(diào)換位置對(duì)結(jié)果圖進(jìn)行簡(jiǎn)單的調(diào)整

      Dotplot可調(diào)節(jié)的點(diǎn)還有很多,下期一起來(lái)了解一下基于Dotplot函數(shù)可視化的美化(以及它的多種變形操作,比如下面的圖E就可以直接使用上面的dotplot函數(shù)的數(shù)據(jù)  )

      文末友情宣傳

      如果你也想做單細(xì)胞轉(zhuǎn)錄組數(shù)據(jù)分析,最好是有自己的計(jì)算機(jī)資源哦,比如我們的2024的共享服務(wù)器交個(gè)朋友福利價(jià)仍然是800,而且還需要有基本的生物信息學(xué)基礎(chǔ),也可以看看我們的生物信息學(xué)馬拉松授課,你的生物信息學(xué)入門課。

        轉(zhuǎn)藏 分享 獻(xiàn)花(0

        0條評(píng)論

        發(fā)表

        請(qǐng)遵守用戶 評(píng)論公約

        類似文章