gct output in DESeq2
I’m trying to analyze my counts data with DESeq2 and based on the tutorial of GSEA, DESeq2 has an output format that can be used directly in the GSEA (here). However, I’m reading their workflow and I don’t find how to make this gct output format.
Any help is appreciated.
• 381 views
In this case you have to prepare the
gct file “by hand” for analyze your data with GSEA. Once you have created your DESeq object (
dds) you are going to retrieve the normalized counts based on the DESeq method:
norm_counts <- counts(dds, normalized = T)
Then, you must arrange this normalized counts matrix according to the minimum requirements for a GCT file.
I suggest you to codificate the
norm_counts as a
data.frame and add an extra column called description (this column could contain the id’s of your genes):
norm_counts <- as.data.frame(norm_counts) norm_counts$description <- norm_counts$your_id_column
Move the “description” column to be the second in the df and save it using the
write.table(norm_counts, "path_to_save_file.gct", sep = "t", quote = F, row.names = F)
Finally, using a plain text editor put all the additional information (following the directions of the link) to have a gct file for GSEA.
For a detailed tutorial about
cls files watch this video but please follow the directions of the link
Hope it could help!
I would like to offer an alternative answer. Neither the
cls nor the
gct file need to be created by hand nor is manual editing in a plain text editor required. Both files can be generated from code in R. For example, the
gct file can be written as follows (which assumes the first two columns of
norm_counts are the gene name and description):
fid <- "norm_counts.gct" writeLines(c("#1.2", paste(nrow(norm_counts), ncol(norm_counts) - 2, collapse="t")), fid, sep="n") write.table(norm_counts, file=fid, quote=FALSE, row.names=FALSE, col.names=TRUE, sep="t", append = TRUE)
Traffic: 2243 users visited in the last hour
Read more here: Source link