在带有配对样本的设计矩阵中包含年龄、种族等变量(EdgeR)

问题描述 投票:0回答:1

我正在使用 EdgeR 分析患者治疗前后的差异 RNA 表达。我主要感兴趣的是哪些蛋白质受到治疗的不同影响。其次,我想看看治疗结果(差异RNA表达)是否受到患者特征(例如年龄、性别等)的影响

仅包含患者 ID 和时间点时,一切正常。然而,我想知道模型中考虑患者特征(例如年龄、种族和性别)如何影响差异表达分析的结果。

当我尝试执行此操作时,代码会抛出错误(为简单起见,仅包括年龄)

Patient <- factor(meta.data_sub$Study_ID) Time <- factor(meta.data_sub$Group3, levels=c("0","1")) Age <- factor(meta.data_sub$Age) design <- model.matrix(~0 +Patient +Age +Time)

dge <- estimateDisp(dge, design = design) fit <- glmQLFit(dge, design = design,dispersion=dge$common.dispersion) qlf <- glmQLFTest(fit)

`Error in glmFit.default(sely, design, offset = seloffset, dispersion = 0.05, : Design matrix not of full rank.  The following coefficients not estimable:
 Age23.7 Age28.3 Age30.5 Age31.3 Age31.5 Age31.8 Age31.9 Age32.8 Age33.5 Age35.9 Age36.2 Age36.4 Age37 Age37.5 Age38.7 Age39.4 Age40.1 Age40.5 Age41.8 Age42.4 Age44.4 Age46 Age47 Age47.5 Age48.5 Age48.6 Age48.7 Age48.9 Age50 Age50.1 Age50.5 Age51.2 Age51.7 Age51.9 Age53.2 Age54.1 Age54.5 Age56.8 Age58.1 Age60.6 Age64.3 Age67.3`

我也尝试使用年龄作为数字,但得到了不同的错误

`Error in glmFit.default(sely, design, offset = seloffset, dispersion = 0.05, : Design matrix not of full rank.  The following coefficients not estimable:
 Age`

从阅读其他问题来看,可能是因为不同时间点的患者特征相同,所以我生成了线性依赖性?在这种情况下,我可以在设计中省略 Patient 吗?

r bioinformatics
1个回答
0
投票

您正在进行“配对”分析,因此每个患者可能的每个属性都已包含在设计中。如果将患者 ID 与其他每个患者变量结合起来,那么这不可避免地会造成混淆,这就是错误告诉您的内容。因此,通过包含患者 ID,您不能包含任何其他患者特征。 当然,您可以从设计中删除患者 ID,但这样分析就不再像现在那么强大,而且您可能需要相当大的样本量才能使分析变得有意义。

© www.soinside.com 2019 - 2024. All rights reserved.