However, if you have non integer data, you should stop and think and make sure that you have counts, and not TPM or some other normalized values.
I am trying to create a DESeq dataset object from a dataset in GEO as follows:
deseq2_142731 <- DESeqDataSetFromMatrix(countData = GSE142731[,2:ncol(GSE142731)],colData = labels_gse142731,design = ~V1)
However, I get an error:
Error in DESeqDataSet(se, design = design, ignoreRank) : some values in assay are not integers
Both the colData and countData variables are from GEO, they have the same dimension. Please, any ideas on how to handle this?
1 answer
some values in assay are not integers
DESeq2 takes raw counts (integers) as input. So if you are sure that this table you downloaded are in fact raw data then you can just round() them to make integers. This is in line with the advise from the DESeq2 author, e.g. here https://support.bioconductor.org/p/88763/#88764
Quote:
I'm not worried about any loss of precision for inference of log fold change in this rounding, because fractions of counts are tiny compared to the sampling and biological variation on counts in RNA-seq.
Log in to answer this question.