Skip to content

[Bioc-devel] package test failing due to CSAW

2 messages · Vivek Bhardwaj, Aaron Lun

#
Hi All

The check of my package is failing locally due to the error in 
"csaw::scaledAverage" function. Untill version 3.9, I used to pass a 
DGElist object to this function call as follows:

/dat.y <- csaw::asDGEList(data, assay = assay.data)//# create DGElist 
from SE object
//dat.y <- edgeR::estimateCommonDisp(dat.y)//# estimate dispersion
/

/data.ab <- csaw::scaledAverage(dat.y, scale = 1, prior.count = 1) # get 
scaled average
/

Now in version 3.10 I get the following error:

Error in (function (classes, fdef, mtable) :
 ? unable to find an inherited method for function ?assay? for signature 
?"DGEList", "character"?

Is CSAW not accepting DGElist anymore? How shall I replace this function 
call here?


Thanks,

Vivek
#
This behavior has been deprecated since May 18 2018, looking at the Git 
logs here:

https://github.com/LTLA/csaw/commits/master/R/scaledAverage.R

I eventually got around to removing it last month, so the deprecation 
warning would have existed for 2 release cycles. That's fair game to me.

The reason for this is that filtering in the csaw workflow is usually 
done before conversion to a DGEList, so it makes more sense to apply 
scaledAverage() on SE objects. In fact, you're *meant* to run it on SE 
objects, hence the deprecation of the DGEList inputs

In your case, you have scale=1 so you might as well just call 
edgeR::aveLogCPM() directly. scaledAverage() just mimics this function 
with some careful scaling of the prior count when scale!=1.

-A
On 6/25/19 1:16 AM, Vivek Bhardwaj wrote: