1.利用箱線圖比較兩類樣本的某個(gè)細(xì)胞比例差異
比較直觀,但是缺點(diǎn)在于如果單細(xì)胞樣本個(gè)數(shù)過少且異質(zhì)性大,導(dǎo)致很難有統(tǒng)計(jì)學(xué)顯著意義
library(ggpubr)
data <- data.frame(Cancer = c(0.5, 0.6, 0.8, 0.2),
Normal = c(0.2, 0.3, 0.7, 0.4),
Celltype = "T cells")
mydata <- reshape2::melt(data,id.vars=c("Celltype"))
ggboxplot(mydata, x = "Celltype", y = "value",
color = "variable", palette = "jama",
add = "jitter") + stat_compare_means(aes(color=variable))

2.R o/e 比值
好多文章都有用這個(gè),我的理解是四格表卡方檢驗(yàn)計(jì)算出來的觀測(cè)除以期望
| Cell_type | Cancer | Normal |
|---|---|---|
| Tcell | 80 | 200 |
| Bcell | 100 | 120 |
| Tam | 200 | 100 |
例如上述數(shù)據(jù),一開始有三類細(xì)胞,分別在癌和正常的個(gè)數(shù)如表所示,那么計(jì)算R
o/e 的時(shí)候就要構(gòu)建四格表,以T細(xì)胞為例
| Cell_type | Cancer | Normal |
|---|---|---|
| Tcell | 80 | 200 |
| Others | 300 | 220 |
##計(jì)算卡方值以及期望和觀測(cè)值
x <- chisq.test(matrix(c(80,300,200,220),ncol = 2))
Roe <- x$observed / x$expected
Roe
## [,1] [,2]
## [1,] 0.6015038 1.3605442
## [2,] 1.2145749 0.8058608
#p值
paste0("P-value = ",x$p.value)
## [1] "P-value = 6.55065992002061e-15"
可以看出Normal組Roe>1,說明T細(xì)胞比例在Normal組相對(duì)Cancer組會(huì)更多一些
3.OR指數(shù)
這個(gè)其實(shí)跟Roe是等同效果,只不過它是利用fisher檢驗(yàn)來計(jì)算OR值
###T細(xì)胞在Cancer組OR值
fisher.test(matrix(c(80,300,200,220),ncol = 2))
##
## Fisher's Exact Test for Count Data
##
## data: matrix(c(80, 300, 200, 220), ncol = 2)
## p-value = 2.184e-15
## alternative hypothesis: true odds ratio is not equal to 1
## 95 percent confidence interval:
## 0.2117305 0.4052156
## sample estimates:
## odds ratio
## 0.2938061
###T細(xì)胞在Normal組OR值
fisher.test(matrix(c(200,220,80,300),ncol = 2))
##
## Fisher's Exact Test for Count Data
##
## data: matrix(c(200, 220, 80, 300), ncol = 2)
## p-value = 2.184e-15
## alternative hypothesis: true odds ratio is not equal to 1
## 95 percent confidence interval:
## 2.467822 4.722986
## sample estimates:
## odds ratio
## 3.403605
終: 寫這個(gè)單純記錄一下過程,避免后面自己忘記了,僅為拙見