I am running a time series analysis on DESeq2 and I one of the genes did not converge (see below):
ddsTC <- DESeq(dds, test="LRT", fitType = "local", reduced = ~ condition + timepoint, quiet = FALSE, parallel = TRUE, betaPrior = FALSE, BPPARAM=MulticoreParam(10)) using pre-existing size factors estimating dispersions gene-wise dispersion estimates: 10 workers mean-dispersion relationship final dispersion estimates, fitting model and testing: 10 workers -- replacing outliers and refitting for 123068 genes -- DESeq argument 'minReplicatesForReplace' = 7 -- original counts are preserved in counts(dds) estimating dispersions fitting model and testing 1 rows did not converge in beta, labelled in mcols(object)$fullBetaConv. Use larger maxit argument with nbinomLRT
Following a suggestion I found in one of the forums I tried to clean that gene using:
ddsClean <- ddsTC[which(mcols(ddsTC)$betaConv),]
but I get this error message; Error in base::which(x, arr.ind, useNames, ...) : argument to 'which' is not logical
Does anyone know what the problem is? I checked ddsTC and there is no betaConv column.
Thanks
Dear Michael, thanks so much for your answer. I am not sure if I understand what you are asking for. When you say 'labelled column' are you referring to the x value in base::wich? If that is your question I really do not know what it is. When I run mcols(ddsTC) the betaConv column is missing. Is that normal?
Ok, I'll copy paste, above it says:
In your code you try to pull out
mcols(ddsTC)$betaConv
, and R says it does not exist.You can look to see the columns that exist for a dataset called "object":
But note that the message above already told you to look at the column called
fullBetaConv
.Thanks a lot Michael, I found the genes on the fullBetaConv column. I remove them and I am now running the analysis again.