我正在与一些数据斗争,但我得到一个错误,我无法理解为什么......
initial <-read.table....
library(Mass)
一切正常,直到:
glm.percent <- glm.nb(cbind(Count, Rest)~ Plasmid+Region*Plasmid, data=initial)
Error in x[good, , drop = FALSE] : (subscript) logical subscript too long
所以有点背景知识。我想比较6个组织层中细胞的比例。不,我知道我必须在R中使用整数作为负二项式,我读到我必须使用cbind将我可能的计数数量与我的负数计数相关联。所以这就是我上面所做的。我之前读过这个错误可能是由于缺少数据点,但一切都很好。有没有人有任何有用的想法?
'data.frame': 54 obs. of 4 variables:
$ Plasmid: Factor w/ 2 levels "CTR","EXP": 2 2 2 2 2 2 2 2 2 2 ...
$ Region : Factor w/ 6 levels "L0","L1","L2+3",..: 2 2 2 2 2 3 3 3 3 3 ...
$ Count : int 0 3 34 12 83 361 426 185 402 565 ...
$ Rest : int 464 592 306 482 791 103 169 155 92 309 ...
干杯!
答案 0 :(得分:1)
你对二项式和负二项式模型之间的区别感到困惑;这是一个常见的混乱。对于比例,您应该使用二项式(而不是负二项式)模型......
model <- glm(cbind(Count, Rest)~ Region*Plasmid,
family=binomial, data=initial)
或
initial <- transform(initial,
total=Rest+Count,
prop=Count/(Rest+Count))
model <- glm(prop ~ Region*Plasmid, weights=total,
family=binomial, data=initial)