To any and all,
I am exploring pre-filters on my RNA-seq data analysis using DEXSeq. After creating the DEXSeqDataSet object, I make duplications of the object with modified levels stringency of filter (hoping to find a reasonable threshold to continue with):
dxd = DEXSeqDataSetFromHTSeq(...)
dxdn1 <- dxd[rowSums(cpm(featureCounts(dxd))>1) >= 4]
dxdn2 <- dxd[rowSums(cpm(featureCounts(dxd))>2) >= 4]
dxdn5 <- dxd[rowSums(cpm(featureCounts(dxd))>5) >= 4]
I then pass all four objects through each step of the DEXSeq pipeline.
dxd = estimateSizeFactors( dxd )
dxdn1 = estimateSizeFactors( dxdn1 )
dxdn2= estimateSizeFactors( dxdn2 )
dxdn5= estimateSizeFactors( dxdn5 )
dxd = estimateDispersions( dxd )
dxdn1= estimateDispersions( dxdn1)
dxdn2= estimateDispersions( dxdn2 )
dxdn5= estimateDispersions( dxdn5 )
dxd = testForDEU( dxd )
dxdn1= testForDEU( dxdn1 )
dxdn2= testForDEU( dxdn2 )
dxdn5= testForDEU( dxdn5 )
dxd = estimateExonFoldChanges( dxd, fitExpToVar="condition")
dxdn1 = estimateExonFoldChanges( dxdn1, fitExpToVar="condition")
dxdn2 = estimateExonFoldChanges( dxdn2, fitExpToVar="condition")
dxdn5 = estimateExonFoldChanges( dxdn5, fitExpToVar="condition")
At the point of estimating exon fold changes, I receive errors only with the objects that were filtered with messages such as:
Error: 860 errors; first error:
Error in `rownames<-`(`*tmp*`, value = character(0)): attempt to set 'rownames' on an object with no dimensions
...with multiple traceback messages. Is there someway that I am affecting the data with my filter that causes problems with this calculation? When I check for the the class of the objects using summary(), they still all report "DEXSeqDataSet".
R version 3.1.2 (2014-10-31)
Platform: x86_64-apple-darwin10.8.0 (64-bit)
DEXSeq_1.12.2
Thanks ahead of time for any insight on this lovely warning.
To get this filter to work in DEXSeq, I had to load the edgeR package (for the cpm function). Maybe something from either EdgeR or the command cpm has altered the columns or row names in a way that the command estimateExonFoldchanges can't operate as usual...?