修正差异基因中上下调基因数目失衡
1. 实验设计
- 固定实验组(EBVa)样本量:始终使用27例EBVaGC样本。
- 逐步增加对照组(EBVn)样本量:从50例逐步增加到250例(每次增加50例),每次随机抽取对应数量的EBVn样本,重复进行差异表达分析。
- 观察指标:记录不同样本量下DEGs的总数量及上下调比例。
2. 验证逻辑
- 假设1:若样本量差异导致不平衡
- 当EBVn样本量增加时,统计功效(检测差异基因的能力)会增强,可能检测到更多DEGs,且上下调比例可能趋于均衡。
- 预期结果:上调基因数量随EBVn样本量增加而显著增加,上下调比例逐渐接近。
- 假设2:若生物学本质导致不平衡
- 无论EBVn样本量如何变化,DEGs的上下调比例保持稳定(下调显著多于上调)。
- 预期结果:即使EBVn样本量增加,DEGs数量及上下调比例仍无明显变化。
3. 代码设计
# sample distribution
index <- seq(28,277)
for (test in seq(1,5)){
# EBVn 50 50 .. 50 50
# 选小一点,这样可以把样本异质性凸显出来
# print(sample_size)
sample_size <- 50
cur_mat <- EBV_dat_num[,c(seq(1,27),sample(index, sample_size))]
degs_analysis_draw(cur_mat, d)
# break
}
# 散点图
num_degs <- data.frame(
down = c(2939,2932,2996,3609,3396),
up = c(1199,1197,1217,1329,1234)
)
# basic scatterplot
scatter_plot <- ggplot(num_degs, aes(x=down, y=up)) +
geom_point()
scatter_plot
` # sample distribution `
index <- seq(28,277) for (test in seq(1,5)){ # EBVn 50 50 .. 50 50 # 选小一点,这样可以把样本异质性凸显出来 # print(sample_size) sample_size <- 50 cur_mat <- EBV_dat_num[,c(seq(1,27),sample(index, sample_size))] degs_analysis_draw(cur_mat, d) # break } # 散点图 num_degs <- data.frame( down = c(2939,2932,2996,3609,3396), up = c(1199,1197,1217,1329,1234) ) # basic scatterplot scatter_plot <- ggplot(num_degs, aes(x=down, y=up)) + geom_point() scatter_plot
4. 实际结果
通过抽样测试发现:
-
DEGs总数稳定:
EBVn样本量 下调基因数 上调基因数 总DEGs数 50 3823 1357 5180 100 4005 1411 5416 150 4400 1355 5755 200 4320 1387 5707 250 4416 1340 5756 -
上下调比例始终失衡:
- 下调基因占比稳定在 75%~80%,上调基因占比 20%~25%。
- 即使EBVn样本量从50增至250,上调基因数量未显著增加,反而波动较小。
5. 关键结论
- 样本量差异不主导结果:
- 若技术因素(如样本量不足)是主因,EBVn样本量增加应显著提高检测能力,使更多潜在上调基因被识别,但实际结果未支持这一预期。
- 生物学机制更可能解释失衡:
- 下调基因占优的现象在不同样本量下均稳定存在,提示EBV感染可能通过表观沉默(如DNA甲基化)或病毒-宿主互作导致广泛基因抑制。
6. 补充验证
- 个体异质性测试: 固定EBVn样本量为50,多次随机抽取不同样本组合,发现上下调基因数量波动范围小(如下调基因数2900~3600),证明结果受个体差异影响有限。
- 火山图一致性: 不同样本量下,火山图的分布模式高度相似(大量基因集中于左侧“下调区”)。
7. 总结
- 在差异表达分析中,需通过抽样、批次校正等方法排除技术干扰。
- 当技术因素被排除后,应优先从分子机制(如病毒效应、免疫编辑)中寻找答案。
2. 高表达基因对差异分析的影响
1. 异常值检测
- 箱线图法(IQR):若基因表达量超过Q3 + 1.5×IQR或低于Q1 - 1.5×IQR,可判定为异常值。
- Z-score法:计算基因表达量的Z-score(标准化值),超过±3的视为异常值。
2. 实验设计
- 假设1:实验批次导致的高表达
- 使用Combat来对基因进行批次效应的去除
- 假设2:Keep genes的高表达
- 使用 DESeq2 或 EdgeR 时,通过
lfcShrink函数收缩log2倍数变化值,减少高表达基因对差异倍数的影响 - 采用 VST(方差稳定化变换) 或 rlog(正则化对数变换) 替代原始计数,降低高表达基因的方差权重
- 使用 DESeq2 或 EdgeR 时,通过
PREVIOUSRNA-seq质控