Hi Aaron,
I have two datasets of HiC experiment on , one control and one sample. I am trying to use diffHiC to find differential interaction between them.
While going through the user manual and following the instructions, I got stuck up at Modelling biological variablility.
design <- model.matrix(~factor(c("hepg2","ago1")))
> colnames(design) <- c("HepG2","Ago1")
> design
HepG2 Ago1
1 1 1
2 1 0
attr(,"assign")
[1] 0 1
attr(,"contrasts")
attr(,"contrasts")$`factor(c("hepg2", "ago1"))`
[1] "contr.treatment"
> y <- asDGEList(data)
> y$offset <- nb.off
> y <- estimateDisp(y,design)
Warning message:
In estimateDisp.default(y = y$counts, design = design, group = group, :
No residual df: setting dispersion to NA
> y$common.dispersion
[1] NA
> head(nb.off)
[,1] [,2]
[1,] 0.5439510 -0.5439510
[2,] 0.5342466 -0.5342466
[3,] 0.5398196 -0.5398196
[4,] 0.5375195 -0.5375195
[5,] 0.5434533 -0.5434533
[6,] 0.4076305 -0.4076305
Why am I not able to see common.dispersion?
Best,
Manjula
Also see the recommendations in section 2.11 of the edgeR user's guide, on what to do when you have no replicates.
If dispersion cant be estimated, then how do I create fit object to take next step of 'testing for significant interactions'. Is there any work around for handling samples without replicates?
See points 2 and 3 of section 2.11. However, these are only stop-gap solutions; the correct fix is to perform the experiment again to obtain a set of replicates. Never mind dispersion estimation, it's just good science - the only way to know if your result is reproducible is to do it again. You'll also get more power to detect differences when you have more samples.