How estimateDisp, glmQLFit and glmQLFTest process my TMM normalized read count matrix?
1
0
Entering edit mode
Giuseppe • 0
@giuseppe-25187
Last seen 10 weeks ago
Salerno

Dear all, I'm using edgeR for differential analysis of ChIPseq data between two group (3 samples for each group). All is fine up to TMM normalization (I have understand how the norm factor are calculated) but starting from this point my nightmare start.

I can't understand how my count matrix are used by estimateDisp, glmQLFit and glmQLFTest functions.

Can some of you explain in the easier way as possible (showing a matrix and showing how to calculate dispersion gene by gene) in order to better understand these steps?? Also tutorials where matrix and how to use it are shown could be helpful User guide is well written but I can't understand how 3 mentioned functions works.

Lot of beer for who will stop my nightmare

Thanks a lot

edgeR glmQLFTest glmQLFit estimateDisp • 308 views
0
Entering edit mode
ATpoint ▴ 970
@atpoint-13662
Last seen 14 hours ago
Germany

At which point of the manual did you get stuck?

https://www.bioconductor.org/packages/release/bioc/vignettes/edgeR/inst/doc/edgeRUsersGuide.pdf

0
Entering edit mode

Hi ATpoint, thanks for your reply... I'm using Csaw for this project but i think don't matter since my doubt are about edgeR steps

After count the reads in windows and estimate the background I have filtered the data

fstats <- filterWindowsGlobal(count, background)
min.fc <- 3
keep <- fstats$filter > log2(min.fc) filtered.data <- count[keep,]  and perform a TMM normalization filtered.data <- normFactors(background, se.out=filtered.data)  Then, I have make a matrix celltype <- file$Diet
celltype[grep("Cntl", celltype)] <- "Cntl"
celltype[grep("Treat", celltype)] <- "Treat"

celltype <- factor(celltype)
design <- model.matrix(~0+celltype)
colnames(design) <- levels(celltype)
y <- asDGEList(filtered.data)


and from here my nightmare start. I would like to know how from my count matrix I'll obtain fold change and Pvalue (how this is done step by step across the three functions reported below (estimateDisp, glmQLFit and glmQLFTest)

y <- estimateDisp(y, design)
fit <- glmQLFit(y, design, robust=TRUE)
contrast <- makeContrasts(YD-RD, levels=design)
res <- glmQLFTest(fit, contrast=contrast)


I'm able to carry out the analysis, but how it is done is not really clear. Thanks in advance for you time

1
Entering edit mode

The link ATpoint provided was to edgeR, not csaw, so you should follow the link and read the User's Guide. This support site is intended to help people with specific technical issues with the software rather than providing tutorial services. The vignettes are intended to provide that sort of information, and the edgeR User's Guide is better than most at doing so.