Dear Kevin, Thank you very much for your help, I really appreciate it! I have done what you said and got weird results with only around 250 DEGs. Just to double-check that this is not a problem with the methods I used. I have 3 questions. The dataset(GSE114686) contains 84 samples that are normalized and in the TMM scale. I am not interested in all samples, only 6 are of interest to me so I subsetted the data and analyzed them going the logCPM route and the limma-trend pipeline WITHOUT calling the calcNormFactors command as shown below in the code. My questions now are:
1) TMM-normalization is a cross-sample normalization, meaning that these counts/numbers are relative, and accordingly taking specific samples to analyze while ignoring the other samples used to calculate TMM is not correct methodologically, right? So, the relatively low DEGs could be due to my wrong way of analysis?
2) Eventually I would like to compare the DEGs from this dataset with another dataset that is available with raw counts(thank God!) and I analyzed it using DESeq2. Is it methodologically sound to compare DEGs from the limma-trend pipeline(that is to my understanding is analyzed as if they are microarray data while they are RNA-seq, but not from raw counts) with deseq2 or should I analyze the other dataset of raw counts using limma-voom pipeline?(as this uses a more similar approach to limma-trend I think compared to deseq2??)
3) Is there a way that I can get raw counts via GEO of this dataset other than contacting the researchers because I really find it tedious and not robust(from what I read in Biocondcuter and here) to analyze already processed data.
Again, thank you very much for your help!
######################################################3 Code Used
# subsetting data
sora_df<-sora_df%>%select(starts_with(c("en","D3","S3"))) # **note that sora_df is the subsetted data that is in the TMM scale**.
# dge list
dg_list<-DGEList(counts = sora_df[,2:ncol(sora_df)],genes=sora_df[,1])
group<-factor(c("Ct","Ct","Ct","SOR","SOR","SOR"))
# storing cell group
dg_list$samples$group<-group
# Making logCPM2
lcpm <- cpm(dg_list, log=TRUE)
#making design matric
my_design<-model.matrix(~0+group)
colnames(my_design) <- gsub("group", "", colnames(my_design))
# fitting the model====
fit<-lmFit(lcpm,my_design)
# making contrast matrix
contrast_mat<-makeContrasts(Diff=SOR-Ct,levels=my_design)
fit2<-contrasts.fit(fit,contrasts=contrast_mat) # here now you estimate SOR-cONTROL
fit3<-eBayes(fit2,trend=TRUE)