R model.matrix 和 makeContrast。了解模型和可能的对比

机器算法验证 r 混合模式 对比
2022-04-12 01:14:34

我有 12 只老鼠的测量值,分为两种情况。我每只老鼠都有 4 个组织的测量值。设计不平衡,条件 1 有 5 只小鼠,条件 2 有 7 只。

阅读 bioconductor edgeR 手册后,我设置了以下模型:

design <- model.matrix(~ Condition + Tissue + Condition:Mouse + Condition:Tissue)

然后我手动删除了没有观察到的术语。

design <- design[, -which(colnames(design) %in% c("Condition1:Mouse6", "Condition1:Mouse7"))]

我可以拟合模型,但是当我设置对比时,我会感到困惑。我想获得处于condition2的主要效果,每个组织的主要效果以及每个组织的交互效果。

colnames(design)
 [1] "(Intercept)"  "Condition2"    "Tissue2"              
 [4] "Tissue3"  "Tissue4"   "Condition1:Mouse2"            
 [7] "Condition2:Mouse2"    "Condition1:Mouse3" "Condition2:Mouse3"         
 [10] "Condition1:Mouse4"    "Condition2:Mouse4" "Condition1:Mouse5"            
 [13] "Condition2:Mouse5"    "Condition2:Mouse6" "Condition2:Mouse7"         
 [16] "Condition2:Tissue2"   "Condition2:Tissue3"  "Condition2:Tissue4" 

为了获得条件的主要效果,我使用了对比

c(0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)

比较例如组织 1 和 2 或 2 和 3 我喜欢这样

c(0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)
c(0,0,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0)

但是假设我想得到组织 1 中条件 1 和条件 2 之间的差异。鉴于模型矩阵是如何构建的,组织 1 不存在。我可以做一个比较像:

c(0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,-1,-1,-1)

以及如何对所有组织的变化进行类似 anova 的测试:条件交互项。对比

c(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1)

只会比较组织 2、3 和 4,与什么比较?

这里有很多问题。快速回顾一下。1. 不平衡设计中的空项可以去掉吗?2.如何找到模型矩阵中缺少的组织类别中水平的影响。3. 我如何发现交互项的所有级别发生的变化(与缺少组织1 问题有关)。

带有完整 R 模型矩阵/线性模型指南的页面的链接也将不胜感激。

0个回答
没有发现任何回复~