[BioC] Negative parameter error when using goseq

Nadia Davidson nadia.davidson at mcri.edu.au
Wed Mar 13 02:21:49 CET 2013


Tarca, Adi <atarca at ...> writes:
> 
> Dear Matthew,
> I am getting the following error when using goseq. Any idea what may cause it?
> Thanks,
> Adi
> 
> > pwf=nullp(genes,bias.data=cntbias)
> > gocats=as.list(org.Hs.egGO2ALLEGS)
> > GOr=goseq(pwf,gene2cat=gocats)
> Using manually entered categories.
> Calculating the p-values...
> Error in dWNCHypergeo(num_de_incat, num_incat, num_genes - num_incat,  :
>   Negative parameter
> > head(pwf)
>           DEgenes bias.data        pwf
> 642819          0      3764 0.05775376
> 414235          0       124 0.02107342
> 57107           0     14702 0.06023892
> 649159          1       248 0.02542837
> 3127            0     44633 0.06357525
> 100507412       1      1337 0.05268580
> > head(gocats[3:5])
> $`GO:0000012`
>         IDA         IDA         IEA         IMP         IDA         IDA
>      "3981"      "7141"      "7515"     "23411"     "54840"     "55775"
>         IMP         IMP         IEA
>     "55775"    "200558" "100133315"
> 

> Adi Laurentiu TARCA, Ph.D.

Dear Adi,

I think the trouble is that "org.Hs.egGO2ALLEGS" lists some GO groups 
twice for the same gene. This is making goseq overestimate the number 
of genes in a particular GO category, to the extent that the number of 
genes in the category is more than the total number of genes.

It should be simple to fix with:
gocats<-sapply(gocats,function(x){unique(x)})
before the "goseq" command.

I'll update the goseq code so it checks for this scenario in future.

Cheers,
Nadia.



More information about the Bioconductor mailing list