在R中,当调查长度不同时,如何计算卡方检验中的预期值?

时间:2012-08-31 03:02:37

标签: r chi-squared

我正在做一项行为研究,我想看看一个物种是否表现出与三个时期中预期的显着不同的反应。有47个独立的物种观测,每个观测有三个时期,总观测时间为8.6分钟。第一期为3分钟,第二期为0.6分钟,第三期为5分钟。在每个时期,动物可以积极或消极地作出反应。在第一阶段,有两个阳性反应(47个观察结果中; 45个阴性),在第二个时期,47个反应中有13个是阳性,而在第三个时期,47个反应中有14个是阳性。

因此,我试图运行一个chisquare测试,我调整零假设中的概率来纠正周期之间的时间差异,但我认为我没有正确地做到这一点。

data<-c(2,13,14)
null.probs<-c(3/8.6, 0.6/8.6, 5/8.6)
chi<-chisq.test(data, p=null.probs)

我很确定在这种情况下我对这些期望值的零假设是不正确的,但我不确定如何正确调整它。

1 个答案:

答案 0 :(得分:6)

如果您使用“泊松”错误运行glm,则会获得以卡方分布的偏差统计量。您可以将计数用作结果,并添加一个log(time)的偏移项,它将根据不同的观察长度进行调整。

> counts<-c(2, 13, 14)
> times<-c(3, 0.6, 5)
> glm(counts ~ letters[1:3] +offset( log(times)), family="poisson")

Call:  glm(formula = counts ~ letters[1:3] + offset(log(times)), family = "poisson")

Coefficients:
  (Intercept)  letters[1:3]b  letters[1:3]c  
      -0.4055         3.4812         1.4351  

Degrees of Freedom: 2 Total (i.e. Null);  0 Residual
Null Deviance:      36.68 
Residual Deviance: 1.776e-15    AIC: 17.52 

Degrees of Freedom: 2 Total (i.e. Null);  0 Residual
Null Deviance:      36.68 
Residual Deviance: 1.776e-15    AIC: 17.52 

你已经完全安装了一个只有两个自由度的模型。因此,确切的拟合显然将解释所有数据。您用于推理的是从泊松均值中记录(计数)的总和。 (如果任何计数为零,将会出现可预测的问题。)