'Cochran q test RVAideMemoire package

I am having some issues with the Cochran q test from the "RVAideMemoire" package.

My data below:

library(RVAideMemoire)
a <- c(0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 1L, 1L, 1L, 1L, 1L, 
  1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
  1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 0L, 0L, 1L, 0L, 0L, 
  0L, 0L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
  1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
  1L, 1L, 1L, 1L, 1L, 1L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 1L, 1L, 1L, 
  1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
  1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
  1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
  1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
  1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
  1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
  1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
  1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
  1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
  1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
  1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
  1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
  1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
  1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
  1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
  1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
  1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
  1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
  1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
  1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
  1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
  1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
  1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
  1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
  1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
  1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
  1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
  1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L)
b <- c("0", "1", "0", "1", "1", "0", "0", "1", "1", "0", "1", "1", 
  "0", "1", "0", "0", "1", "1", "0", "0", "1", "1", "0", "0", "1", 
  "1", "0", "1", "0", "0", "1", "1", "0", "0", "1", "1", "0", "0", 
  "1", "1", "0", "0", "1", "0", "0", "1", "1", "0", "0", "1", "0", 
  "0", "1", "1", "0", "1", "1", "0", "0", "1", "1", "0", "0", "1", 
  "1", "0", "0", "1", "1", "0", "1", "0", "0", "1", "1", "0", "0", 
  "1", "1", "0", "0", "1", "1", "0", "1", "0", "0", "1", "1", "0", 
  "0", "1", "1", "0", "0", "1", "1", "0", "1", "0", "0", "1", "1", 
  "0", "1", "1", "0", "0", "1", "1", "0", "1", "0", "0", "1", "1", 
  "0", "0", "1", "1", "0", "0", "1", "1", "0", "1", "0", "1", "0", 
  "1", "0", "1", "0", "1", "0", "1", "0", "0", "1", "0", "1", "0", 
  "1", "1", "0", "1", "0", "1", "0", "0", "1", "0", "1", "0", "1", 
  "1", "0", "1", "0", "0", "1", "0", "0", "1", "0", "1", "0", "1", 
  "0", "1", "0", "1", "0", "1", "0", "1", "0", "1", "0", "1", "0", 
  "0", "1", "0", "1", "0", "1", "1", "0", "1", "0", "1", "0", "0", 
  "1", "0", "1", "0", "1", "1", "0", "1", "0", "1", "0", "0", "1", 
  "0", "1", "0", "1", "1", "0", "1", "0", "1", "0", "1", "0", "1", 
  "0", "1", "0", "1", "0", "1", "0", "1", "0", "0", "1", "0", "1", 
  "0", "1", "1", "0", "1", "0", "1", "0", "0", "1", "0", "1", "0", 
  "1", "1", "0", "1", "0", "1", "0", "0", "1", "0", "0", "1", "1", 
  "1", "0", "1", "0", "1", "0", "1", "1", "0", "1", "0", "1", "0", 
  "1", "0", "1", "0", "1", "0", "1", "0", "1", "0", "0", "1", "0", 
  "1", "0", "1", "1", "0", "1", "0", "1", "0", "0", "1", "0", "0", 
  "1", "1", "0", "1", "0", "1", "0", "0", "1", "0", "1", "0", "1", 
  "1", "0", "1", "0", "1", "0", "1", "0", "1", "0", "1", "0", "1", 
  "0", "1", "0", "1", "0", "0", "1", "0", "1", "0", "1", "1", "0", 
  "1", "1", "0", "0", "1", "0", "0", "1", "0", "1", "0", "1", "0", 
  "1", "1", "0", "1", "0", "1", "0", "1", "0", "1", "0", "1", "0", 
  "1", "0", "1", "0", "1", "0", "0", "1", "0", "1", "0", "1", "1", 
  "0", "1", "0", "1", "0", "0", "1", "0", "1", "0", "1", "1", "0", 
  "1", "0", "1", "0", "0", "1", "0", "1", "0", "1", "1", "0", "1", 
  "0", "1", "0", "1", "0", "1", "1", "0", "1", "0", "1", "0", "1", 
  "0", "1", "0", "1", "0", "0", "1", "0", "1", "0", "1", "0", "1", 
  "0", "1", "0", "1", "1", "0", "1", "0", "1", "0", "0", "1", "0", 
  "1", "0", "1", "1", "0", "1", "0", "1", "0", "0", "1", "0", "1", 
  "0", "1", "1", "0", "1", "0", "1", "0", "0", "1", "0", "1", "0", 
  "1", "0", "1", "0", "1", "0", "1", "1", "0", "1", "0", "1", "0", 
  "1", "0", "1", "0", "1", "1", "0", "1", "0", "1", "0", "0", "1", 
  "0", "1", "0", "1", "1", "0", "1", "0", "1", "0", "0", "1", "0", 
  "1", "0", "1", "0", "1", "0", "1", "0", "1", "1", "0", "1", "0", 
  "1", "0", "0", "0", "1", "0", "1", "0", "1", "1", "0", "1", "0", 
  "1", "0", "0", "1", "0", "1", "0", "1")
c <- c("1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", 
  "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", 
  "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", 
  "1", "1", "1", "1", "2", "2", "2", "2", "2", "2", "2", "2", "2", 
  "2", "2", "2", "2", "2", "2", "2", "2", "2", "2", "2", "2", "2", 
  "2", "2", "2", "2", "2", "2", "2", "2", "2", "2", "2", "2", "2", 
  "2", "2", "2", "2", "2", "2", "2", "3", "3", "3", "3", "3", "3", 
  "3", "3", "3", "3", "3", "3", "3", "3", "3", "3", "3", "3", "3", 
  "3", "3", "3", "3", "3", "3", "3", "3", "3", "3", "3", "3", "3", 
  "3", "3", "3", "3", "3", "3", "3", "3", "3", "1", "1", "1", "1", 
  "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", 
  "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", 
  "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", 
  "1", "2", "2", "2", "2", "2", "2", "2", "2", "2", "2", "2", "2", 
  "2", "2", "2", "2", "2", "2", "2", "2", "2", "2", "2", "2", "2", 
  "2", "2", "2", "2", "2", "2", "2", "2", "2", "2", "2", "2", "2", 
  "2", "2", "2", "2", "2", "2", "2", "2", "2", "2", "3", "3", "3", 
  "3", "3", "3", "3", "3", "3", "3", "3", "3", "3", "3", "3", "3", 
  "3", "3", "3", "3", "3", "3", "3", "3", "3", "3", "3", "3", "3", 
  "3", "3", "3", "3", "3", "3", "3", "3", "3", "3", "3", "3", "3", 
  "3", "3", "3", "3", "3", "3", "1", "1", "3", "1", "1", "1", "1", 
  "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", 
  "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", 
  "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", 
  "1", "1", "1", "1", "1", "1", "2", "2", "2", "2", "2", "2", "2", 
  "2", "2", "2", "2", "2", "2", "2", "2", "2", "2", "2", "2", "2", 
  "2", "2", "2", "2", "2", "2", "2", "2", "2", "2", "2", "2", "2", 
  "2", "2", "2", "2", "2", "2", "2", "3", "3", "3", "3", "3", "3", 
  "3", "3", "3", "3", "3", "3", "3", "3", "3", "3", "3", "3", "3", 
  "3", "3", "3", "3", "3", "3", "3", "3", "3", "3", "3", "3", "3", 
  "3", "3", "3", "3", "3", "3", "3", "3", "3", "3", "3", "3", "3", 
  "3", "3", "3", "1", "2", "2", "2", "2", "2", "2", "2", "2", "3", 
  "3", "3", "3", "3", "3", "3", "3", "3", "3", "3", "3", "3", "3", 
  "3", "3", "3", "3", "3", "3", "3", "3", "3", "3", "3", "3", "3", 
  "3", "3", "3", "3", "3", "3", "3", "3", "3", "3", "3", "3", "3", 
  "3", "3", "2", "2", "2", "2", "2", "2", "2", "2", "2", "2", "2", 
  "2", "2", "2", "2", "2", "2", "2", "2", "2", "2", "2", "2", "2", 
  "2", "2", "2", "2", "2", "2", "2", "2", "2", "2", "2", "2", "2", 
  "2", "2", "2", "2", "1", "1", "1", "1", "1", "1", "1", "1", "1", 
  "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", 
  "1", "1", "2", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", 
  "1", "1", "1", "1", "1", "1", "1", "1")

cochran.qtest(a~b|c)

Unfortunately, I always get the error "Error in cochran.qtest(a ~ b | c) : there must be 1 observation per level of 'b' in each block"

When I try the example provided within the package explanation it runs fine:

response <- c(0,1,1,0,0,1,0,1,1,1,1,1,0,0,1,1,0,1,0,1,1,0,0,1,0,1,1,0,0,1)
fact <- gl(3,1,30,labels=LETTERS[1:3])
block <- gl(10,3,labels=letters[1:10])
cochran.qtest(response~fact|block)

I tried to change my parameters with as.numeric, as.factor, ... but the error persists which is frustrating me.

I really appreciate your help!

EDIT: Based on the comment I checked the following:

table(fact, block)
    block
fact a b c d e f g h i j
   A 1 1 1 1 1 1 1 1 1 1
   B 1 1 1 1 1 1 1 1 1 1
   C 1 1 1 1 1 1 1 1 1 1
table(b,c)
   c
b    1  2  3
  0 90 90 90
  1 90 90 90

Which is really puzzling me. As far as I know, Cochran q is an extension of McNemar's test. McNemar's combines everything in a 2x2 matrix, so I would assume the way I have it organized right now is correct?

r


Solution 1:[1]

remove NA and run again

a[is.na(a)]<-0
b[is.na(b)]<-0
c[is.na(c)]<-0
cochran.qtest(a~b|c)

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1 suresh