Raw reads count matrix from exceRpt pipeline are not integers which is needed for Deseq2
1
0
Entering edit mode
grean360 ▴ 10
@2afe8948
Last seen 21 months ago

I am dealing with small RNA sequencing data (from low input samples) and this was run through the exceRpt pipeline which produces the "exceRpt_miRNA_ReadCounts". However, the numbers in this count matrix are not integers which Deseq2 will not accept.

Does anyone know what the correct thing to do here is?

DESeq2 exceRpt exRNA • 506 views
0
Entering edit mode
Last seen 7 days ago
United States

Hi,

Is this the pipeline you are referring to? https://doi.org/10.1016/j.cels.2019.03.004

If so, it looks like it does provide read counts, but also some RPM (reads per million) files as shown in Table 1. Do you counts contain decimals? If not, it could be that DESeq2 is expecting an integer counts matrix and exceRpt is providing an numeric counts matrix.

Here's a small example of how two matrices (mat and mat2) look identical to us, but one of them has numeric and the other one has integer values.

## Numeric matrix
mat <- matrix(as.numeric(1:9), ncol = 3)
## Integer matrix
mat2 <- matrix(as.integer(1:9), ncol = 3)

## They look identical
mat
#>      [,1] [,2] [,3]
#> [1,]    1    4    7
#> [2,]    2    5    8
#> [3,]    3    6    9
mat2
#>      [,1] [,2] [,3]
#> [1,]    1    4    7
#> [2,]    2    5    8
#> [3,]    3    6    9

## But their values are not the same
class(mat[, 1])
#> [1] "numeric"
class(mat2[, 2])
#> [1] "integer"

## We can convert the numeric matrix into an integer one
mat3 <- matrix(as.integer(mat), ncol = 3)
identical(mat2, mat3)
#> [1] TRUE


Best, Leo

PS This was an example for my team on learning how to help others.

0
Entering edit mode

Hi Leo,

That link is the pipeline that I am referring to and my counts do have decimals which is the problem.

0
Entering edit mode

Ok. I recommend then 2 things. First, try contacting the authors of exceRpt directly so they can clarify why the read counts file has decimals.

Assuming that it's not a major reason (major reason example: it's not counts, but RPKM values), then you could use something like round(mat, digits = 0).

1
Entering edit mode

Okay awesome thanks for your help!