I'm getting the following error when calling glmQLFTest()
> qlf <- glmQLFTest(fit,contrast=cont.matrix) Error in data.frame(logFC = logFC, logCPM = glmfit$AveLogCPM, LR = LR, : 'row.names' should specify one of the variables > traceback() 4: stop("'row.names' should specify one of the variables") 3: data.frame(logFC = logFC, logCPM = glmfit$AveLogCPM, LR = LR, PValue = LRT.pvalue, row.names = rn) 2: glmLRT(pois.fit, coef = coef, contrast = contrast) 1: glmQLFTest(fit, contrast = cont.matrix)
I think the error is due to the call to .isBelowPoissonBound() only returning a single row for my data set. My guess is that the problem is that in glmLRT() the call
logFC <- drop((glmfit$coefficients %*% contrast)/log(2))
will produce a vector rather than a matrix, which eventually results in the error from data.frame().
I have an example data set & code at this gist https://gist.github.com/drpowell/ac473045cfea8b489d49e645d3239a53#file-dge-r