[Bioc-sig-seq] error msg from edgeR estimateCRDisp
Laurent Gautier
laurent at cbs.dtu.dk
Thu Jan 6 07:47:45 CET 2011
On 1/6/11 1:08 AM, Gordon K Smyth wrote:
> Dear Kristen and Laurent,
>
> A possible (likely) explanation for the error is that your design
> matrix isn't of full column rank. Can you please check this:
>
> library(limma)
> is.fullrank(design)
Thanks. It was the case here.
Future versions of estimateCRDisp() could test that and report an
informative error message.
Best,
Laurent
> Best wishes
> Gordon
>
>
> On Mon, 3 Jan 2011, Laurent Gautier wrote:
>
>> Hi Gordon,
>>
>> We seem to be experiencing the same issue here, although not
>> originating from mglmOneGroup(), and edgeR-2.0.3 does not change the
>> outcome:
>>
>>> dge_disp <- estimateCRDisp(dge_list, design)
>> Error in if (any(decr)) { : missing value where TRUE/FALSE needed
>>> traceback()
>> 3: mglmLS(y, design, dispersion, offset = offset)
>> 2: adjustedProfileLik(spline.disp[i], y.select, design = design,
>> offset = offset.mat.select + lib.size.mat.select)
>> 1: estimateCRDisp(dge_list, design)
>>> sessionInfo()
>> R version 2.12.1 (2010-12-16)
>> Platform: x86_64-pc-linux-gnu (64-bit)
>>
>> locale:
>> [1] C
>>
>> attached base packages:
>> [1] stats graphics grDevices utils datasets methods base
>>
>> other attached packages:
>> [1] edgeR_2.0.3
>>
>> loaded via a namespace (and not attached):
>> [1] limma_3.6.9
>>>
>>
>>
>>
>> Best,
>>
>>
>> Laurent
>>
>>
>>
>> On 1/3/11 4:36 AM, Gordon K Smyth wrote:
>>> Dear Kirsten,
>>>
>>> The error is arising in mglmOneGroup. I have just updated the relevant,
>>> code in edgeR version 2.0.3. Can you try it and see if you get the same
>>> error?
>>>
>>> With regard to the warning message, I can't think of any reason why
>>> edgeR would evaluate the Poisson density at a non-integer value if you
>>> have provided integer values. Have you checked that you have provided
>>> strictly integer counts? Try
>>>
>>> data$counts <- round(data$counts)
>>> data.cd = estimateCRDisp(data, design)
>>>
>>> to see if it makes any difference. If it does, then the data you
>>> entered
>>> are not all integers.
>>>
>>> We are planning to revise estimateCRDisp() quite a bit during the next
>>> month or so.
>>>
>>> Best wishes
>>> Gordon
>>>
>>>> Date: Wed, 29 Dec 2010 15:39:01 -0500
>>>> From: <kristen.dang at syngenta.com>
>>>> To: <bioc-sig-sequencing at r-project.org>
>>>> Subject: [Bioc-sig-seq] error msg from edgeR estimateCRDisp
>>>>
>>>> Dear fellow edgeR users,
>>>>
>>>> I have an RNA-seq dataset with 2 factors and 24 samples (balanced)
>>>> that I am attempting to analyze with edgeR. I keep encountering the
>>>> following error when I use the estimateCRDisp function.
>>>>
>>>>> data.cd = estimateCRDisp(data, design)
>>>> Error in while (any(i)) { : missing value where TRUE/FALSE needed
>>>> In addition: There were 50 or more warnings (use warnings() to see the
>>>> first 50)
>>>>> warnings()
>>>> Warning messages:
>>>> 1: In dpois(y[i, ], lambda = mu[i, ], log = TRUE) : non-integer x =
>>>> 530.381844
>>>> 2: In dpois(y[i, ], lambda = mu[i, ], log = TRUE) : non-integer x =
>>>> 676.500000
>>>> [etc]
>>>>
>>>>> traceback()
>>>> 3: mglmOneGroup(y, offset, dispersion)
>>>> 2: adjustedProfileLik(spline.disp[i], y.filt, design = design, offset
>>>> = offset.mat.filt +
>>>> lib.size.mat.filt)
>>>> 1: estimateCRDisp(data, design)
>>>>>
>>>>
>>>> I see why the "dpois" function is giving an error, but I am not sure
>>>> why a non-integer value is being sent to it. Any suggestions are
>>>> greatly appreciated.
>>>>
>>>>
>>>> Information about my session and commands follows:
>>>>
>>>> library(edgeR)
>>>> targets = read.csv("design_file.csv")
>>>> targets$factor_a = factor(targets$factor_a)
>>>> targets$factor_b = factor(targets$factor_b)
>>>>
>>>> data = readDGE(targets)
>>>> data = calcNormFactors(data)
>>>>
>>>> contrasts(targets$factor_a) = contr.sum(2)
>>>> contrasts(targets$factor_b) = contr.sum(2)
>>>> design = model.matrix(~factor_a+factor_b, data = targets)
>>>> data.cd = estimateCRDisp(data, design)
>>>>
>>>>
>>>>> sessionInfo()
>>>> R version 2.12.0 (2010-10-15)
>>>> Platform: i386-pc-mingw32/i386 (32-bit)
>>>>
>>>> attached base packages:
>>>> [1] stats graphics grDevices utils datasets methods base
>>>>
>>>> other attached packages:
>>>> [1] edgeR_2.0.2
>>>>
>>>> loaded via a namespace (and not attached):
>>>> [1] limma_3.6.9 tools_2.12.0
>>>>
>>>>
>>>>
>>>> Kristen Dang, Ph.D.
>>>> Computational Biologist
>>>> Syngenta Biotechnology
>>>> Research Triangle Park, NC
>>>
>>> ______________________________________________________________________
>>> The information in this email is confidential and
>>> intend...{{dropped:4}}
>>>
>>> _______________________________________________
>>> Bioc-sig-sequencing mailing list
>>> Bioc-sig-sequencing at r-project.org
>>> https://stat.ethz.ch/mailman/listinfo/bioc-sig-sequencing
>>
>>
>>
>
> ______________________________________________________________________
> The information in this email is confidential and inte...{{dropped:7}}
More information about the Bioc-sig-sequencing
mailing list