Data
xeno_bulk_no_mouse = read.table(
file = "/sci/labs/yotamd/lab_share/lung_sc/bulk/RoxaOsi/Oct23/star/mm39unmapped_noMTGLKI_tpm.txt",
sep = "\t",
header = TRUE
)
rownames(xeno_bulk_no_mouse) = make.unique(xeno_bulk_no_mouse[,"gene_name",drop=T])
xeno_bulk_no_mouse = xeno_bulk_no_mouse[,8:19]
names (xeno_bulk_no_mouse) = gsub(pattern = "_mm.*$",replacement = "",x = names (xeno_bulk_no_mouse))
xeno_bulk_no_mouse = xeno_bulk_no_mouse[,c("M2_ctrl", "M21_ctrl", "M36_ctrl", "M14_osi", "M33_osi", "M14_2_osi",
"M20_roxa", "M30_roxa", "M31_roxa", "M3_combo", "M26_combo",
"M32_combo")]
library(edgeR)
cell.labels = names(xeno_bulk)
condition = str_extract(cell.labels, "osi|combo|ctrl|roxa")
d <- DGEList(counts=xeno_bulk_no_mouse,group=factor(condition))
keep <- rowSums(cpm(d)>50) >= 2
d <- d[keep,]
d <- calcNormFactors(d)
d1 <- estimateCommonDisp(d, verbose=T)
Disp = 0.05523 , BCV = 0.235
d1 <- estimateTagwiseDisp(d1)
design.mat <- model.matrix(~ 0 + d$samples$group)
colnames(design.mat) <- levels(d$samples$group)
d2 <- estimateGLMCommonDisp(d,design.mat)
d2 <- estimateGLMTrendedDisp(d2,design.mat, method="power")
# You can change method to "auto", "bin.spline", "power", "spline", "bin.loess".
# The default is "auto" which chooses "bin.spline" when > 200 tags and "power" otherwise.
d2 <- estimateGLMTagwiseDisp(d2,design.mat)
plotBCV(d2)

et13 <- exactTest(d1, pair=c(1,3)) # compare groups 1 and 3
et24 <- exactTest(d1, pair=c(2,4)) # compare groups 2 and 3
topTags(et13, n=10,p.value = 0.1)
Comparison of groups: osi-combo
topTags(et24, n=10,p.value = 0.1)
Comparison of groups: roxa-ctrl
LS0tCnRpdGxlOiAnYHIgcnN0dWRpb2FwaTo6Z2V0U291cmNlRWRpdG9yQ29udGV4dCgpJHBhdGggJT4lIGJhc2VuYW1lKCkgJT4lIGdzdWIocGF0dGVybiA9ICJcXC5SbWQiLHJlcGxhY2VtZW50ID0gIiIpYCcgCmF1dGhvcjogIkF2aXNoYWkgV2l6ZWwiCmRhdGU6ICdgciBTeXMudGltZSgpYCcKb3V0cHV0OiAKICBodG1sX25vdGVib29rOiAKICAgIGNvZGVfZm9sZGluZzogaGlkZQogICAgdG9jOiB5ZXMKICAgIHRvY19jb2xsYXBzZTogeWVzCiAgICB0b2NfZmxvYXQ6IAogICAgICBjb2xsYXBzZWQ6IEZBTFNFCiAgICBudW1iZXJfc2VjdGlvbnM6IHRydWUKICAgIHRvY19kZXB0aDogMQotLS0KCgoKIyBGdW5jdGlvbnMKCmBgYHtyIHdhcm5pbmc9RkFMU0V9CmBgYAoKIyBEYXRhCgpgYGB7cn0KeGVub19idWxrX25vX21vdXNlID0gcmVhZC50YWJsZSgKICBmaWxlID0gIi9zY2kvbGFicy95b3RhbWQvbGFiX3NoYXJlL2x1bmdfc2MvYnVsay9Sb3hhT3NpL09jdDIzL3N0YXIvbW0zOXVubWFwcGVkX25vTVRHTEtJX3RwbS50eHQiLAogIHNlcCA9ICJcdCIsCiAgaGVhZGVyID0gVFJVRQopCnJvd25hbWVzKHhlbm9fYnVsa19ub19tb3VzZSkgPSBtYWtlLnVuaXF1ZSh4ZW5vX2J1bGtfbm9fbW91c2VbLCJnZW5lX25hbWUiLGRyb3A9VF0pCnhlbm9fYnVsa19ub19tb3VzZSA9IHhlbm9fYnVsa19ub19tb3VzZVssODoxOV0KbmFtZXMgKHhlbm9fYnVsa19ub19tb3VzZSkgPSBnc3ViKHBhdHRlcm4gPSAiX21tLiokIixyZXBsYWNlbWVudCA9ICIiLHggPSBuYW1lcyAoeGVub19idWxrX25vX21vdXNlKSkKeGVub19idWxrX25vX21vdXNlID0geGVub19idWxrX25vX21vdXNlWyxjKCJNMl9jdHJsIiwgIk0yMV9jdHJsIiwgIk0zNl9jdHJsIiwgIk0xNF9vc2kiLCAiTTMzX29zaSIsICJNMTRfMl9vc2kiLCAKIk0yMF9yb3hhIiwgIk0zMF9yb3hhIiwgIk0zMV9yb3hhIiwgIk0zX2NvbWJvIiwgIk0yNl9jb21ibyIsIAoiTTMyX2NvbWJvIildCmBgYAoKYGBge3J9CmxpYnJhcnkoZWRnZVIpCmNlbGwubGFiZWxzID0gbmFtZXMoeGVub19idWxrKQpjb25kaXRpb24gPSBzdHJfZXh0cmFjdChjZWxsLmxhYmVscywgIm9zaXxjb21ib3xjdHJsfHJveGEiKQpkIDwtIERHRUxpc3QoY291bnRzPXhlbm9fYnVsa19ub19tb3VzZSxncm91cD1mYWN0b3IoY29uZGl0aW9uKSkKa2VlcCA8LSByb3dTdW1zKGNwbShkKT41MCkgPj0gMgpkIDwtIGRba2VlcCxdCmQgPC0gY2FsY05vcm1GYWN0b3JzKGQpCmQxIDwtIGVzdGltYXRlQ29tbW9uRGlzcChkLCB2ZXJib3NlPVQpCmQxIDwtIGVzdGltYXRlVGFnd2lzZURpc3AoZDEpCgpgYGAKYGBge3J9CmRlc2lnbi5tYXQgPC0gbW9kZWwubWF0cml4KH4gMCArIGQkc2FtcGxlcyRncm91cCkKY29sbmFtZXMoZGVzaWduLm1hdCkgPC0gbGV2ZWxzKGQkc2FtcGxlcyRncm91cCkKZDIgPC0gZXN0aW1hdGVHTE1Db21tb25EaXNwKGQsZGVzaWduLm1hdCkKZDIgPC0gZXN0aW1hdGVHTE1UcmVuZGVkRGlzcChkMixkZXNpZ24ubWF0LCBtZXRob2Q9InBvd2VyIikKIyBZb3UgY2FuIGNoYW5nZSBtZXRob2QgdG8gImF1dG8iLCAiYmluLnNwbGluZSIsICJwb3dlciIsICJzcGxpbmUiLCAiYmluLmxvZXNzIi4KIyBUaGUgZGVmYXVsdCBpcyAiYXV0byIgd2hpY2ggY2hvb3NlcyAiYmluLnNwbGluZSIgd2hlbiA+IDIwMCB0YWdzIGFuZCAicG93ZXIiIG90aGVyd2lzZS4KZDIgPC0gZXN0aW1hdGVHTE1UYWd3aXNlRGlzcChkMixkZXNpZ24ubWF0KQpwbG90QkNWKGQyKQpgYGAKYGBge3J9CmV0MTMgPC0gZXhhY3RUZXN0KGQxLCBwYWlyPWMoMSwzKSkgIyBjb21wYXJlIGdyb3VwcyAxIGFuZCAzCmV0MjQgPC0gZXhhY3RUZXN0KGQxLCBwYWlyPWMoMiw0KSkgIyBjb21wYXJlIGdyb3VwcyAyIGFuZCAzCnRvcFRhZ3MoZXQxMywgbj0xMCxwLnZhbHVlID0gMC4xKQp0b3BUYWdzKGV0MjQsIG49MTAscC52YWx1ZSA9IDAuMSkgCgpgYGAKCjxzY3JpcHQgc3JjPSJodHRwczovL2h5cG90aGVzLmlzL2VtYmVkLmpzIiBhc3luYz48L3NjcmlwdD4KCg==