[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