Hello, I am trying to execute limma-voom in Galaxy to carry out a differential expression analysis. I have paid special attention to the files I have to provide limma, as well as the permitted and not permitted characters that can appear in the counts matrix or the factor file.
This is the single counts matrix than I am providing limma-voom, where the first column are the gene IDs, and the rest of the columns are the number of reads for each sample (6 in this case):
As for the factor file, this is the one I am using:
Given these data, and executing limma-voom as you can see in this image:
I get the following error message:
Error in colSums(data$counts) : 'x' must be numeric
Could you please help me find the cause of this error? It may be caused by the fact that the first column of the count matrix is not numeric, but I do not know how to indicate limma-voom not to take this column into account for the analysis.
Thank you very much in advance,
regards.
This would be true if you were running this in
R
instead of via this Galaxy submission but best I can tell this is the correct format of the counts matrix for Galaxy (based on this tutorial I found online). So in this case I suspect it's not theGeneID
column but instead an issue with the content in your counts. One thing I noticed right away is that your counts are not raw gene counts which would otherwise be whole integers not floating numbers as shown in your example.So it seems these counts have been processed in some way, my guess is that they've been log-transformed or normalized in some way. Can you confirm that there are no missing values in your "counts" matrix (i.e.
NA
's)?It may also be that this pipeline is transforming the counts at a particular step (like
cpm
transformation) which if applied to these "counts" may produce non-numeric results that lead to this error at a downstream step.