gct output in DESeq2
Hi!
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
command:
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 gct
and cls
files watch this video but please follow the directions of the link
Hope it could help!
Best regards!
Rodo
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