DESeq2 Error: ncol(countData) == nrow(colData) is not TRUE
1
0
Entering edit mode
anpham ▴ 30
@anpham-7402
Last seen 4.0 years ago

I tried to build an DESeqDataSet with a count matrix and a table of sample information. My count matrix is read from a csv file. The count matrix has gene names as the first column. Here are my codes and error message. Please advise as how I should address the error message. Thank you.

# read in the count data and column data

countData <- read.csv ("Gcount.csv", header=T) # dim 48545, 437

colData <- read.csv("Phe.csv", header=TRUE)  # dim 436 53

# construct the DESeqDataSet object
dds <- DESeqDataSetFromMatrix (countData = countData,
colData = colData,
design = ~age_cut4 + Batch_RNA + Study + sex)

# I got the following error message

Error: ncol(countData) == nrow(colData) is not TRUE

deseq2 error • 6.5k views
2
Entering edit mode
@mikelove
Last seen 7 hours ago
United States

The countData should be only a matrix of counts, where each column corresponds and is in the same order as the rows of colData.

As you have a first column with names, you just need to remove that (and you can assign the names as rownames):

mat <- countData[,-1]
rownames(mat) <- countData[,1]
0
Entering edit mode

Hi. I don't understand how to fix this.

Can you explain it with more details?

Thanks you!

0
Entering edit mode

Can you partner with a bioinformatician or someone with experience with R coding?

0
Entering edit mode

Hello Michael

I could not make the same matrix although I did what you said

0
Entering edit mode

The countData input should be a matrix of counts.

You made need to partner with someone with R / bioinformatics experience if you get stuck here.

0
Entering edit mode

Would you plz help me in this error:

Error in DESeqDataSet(se, design = design, ignoreRank) : some values in assay are negative

0
Entering edit mode

DESeq2 is for count data, if you are trying to provide count values that are negative, you either made a mistake or should use alternative software if you are not working with count data.