如何构建数据集来运行计数率随时间的二项式GLM



我正试图使用二项式GLM进行分析,以测试相对计数频率随时间(天)的差异。GLM模型/公式看起来像这样:

(1:2)~一天

我们正在测试对A1:A2频率的影响。基本上,这是一个二项式广义线性模型,其中A1和A2指的是每个基因的替代等位基因的读取计数,Day是一个多水平因子。另一件事是,我将在许多不同的基因(100个)上进行测试,这样我们就可以进行许多测试。

R中的基本模型公式很简单(例如使用长格式数据集):`

glm(AF1:AF2 ~ Day, data = dfLong, family = "binomial")

但我真的不确定如何构建数据或在Gene变量上循环来完成这项任务?

以下是一个示例数据帧:

> df<-read.csv("test.csv")
> df
Gene A.count_1 A.count_2 Day
1    1        60        40   1
2    2       100        30   1
3    3       100         3   1
4    1        55       100   3
5    2       423       410   3
6    3       191        89   3
7    1        20        10   5
8    2       200        10   5
9    3       100        20   5

我想要的输出是测试Day作为一个因素(而不是数字变量)对每个基因的等位基因计数比率的影响,为每个基因产生p值(例如,在一般情况下,1、2和3,或更多,100s)。

如果能为我指明正确的方向,我们将不胜感激。

谢谢!!

我认为

library('lme4')
m <- lmList(cbind(A.count_1,A.count_2) ~ Day | Gene, data = dfLong, 
family = "binomial")
summary(m)

可能应该这么做吗?(从?binomial,两列矩阵响应被视为{成功次数,失败次数})

这适用于lme4包附带的一些内置数据:

lmList(cbind(incidence, size-incidence) ~ period | herd,
data = cbpp, family = binomial)

最新更新