1 Differential Expression, Spyogenes: 20190115

This worksheet performs a set of pairwise comparisons of the counts for this tnseq experiment given the sva surrogate adjustments.

This is being performed via limma/edger/deseq2, which one may rightly argue is not entirely appropriate for TNSeq data. On the other hand, as a general metric of changing fitness, it provides some interesting information.

1.1 Perform Pairwise analyses

all_pairwise() is responsible for following:

  1. Creating an experimental model which includes surrogate estimates from svaseq.
  2. Calling limma, EdgeR, and DESEq2 with the data and that model for every possible pairwise contrast in the data. (Optionally it will now do EBSeq, too.)
  3. Calling a basic method which simply subtracts log2 scaled values as a form of negative control.
  4. Collecting those results.

Among the summaries it provides is a heatmap of how similar each method was for every contrast.

1.3 Find significant genes

## If you wish to reproduce this exact build of hpgltools, invoke the following:
## > git clone http://github.com/abelew/hpgltools.git
## > git reset c89fbb1a6badaccdac9bfbc109bd1fe2d673b639
## This is hpgltools commit: Sun Jan 13 20:46:37 2019 -0500: c89fbb1a6badaccdac9bfbc109bd1fe2d673b639

R version 3.5.2 (2018-12-20)

Platform: x86_64-pc-linux-gnu (64-bit)

locale: LC_CTYPE=en_US.utf8, LC_NUMERIC=C, LC_TIME=en_US.utf8, LC_COLLATE=en_US.utf8, LC_MONETARY=en_US.utf8, LC_MESSAGES=en_US.utf8, LC_PAPER=en_US.utf8, LC_NAME=C, LC_ADDRESS=C, LC_TELEPHONE=C, LC_MEASUREMENT=en_US.utf8 and LC_IDENTIFICATION=C

attached base packages: parallel, stats, graphics, grDevices, utils, datasets, methods and base

other attached packages: bindrcpp(v.0.2.2), ruv(v.0.9.7), hpgltools(v.2018.11), Biobase(v.2.42.0) and BiocGenerics(v.0.28.0)

loaded via a namespace (and not attached): tidyselect(v.0.2.5), lme4(v.1.1-19), RSQLite(v.2.1.1), AnnotationDbi(v.1.44.0), htmlwidgets(v.1.3), grid(v.3.5.2), BiocParallel(v.1.16.5), devtools(v.2.0.1), munsell(v.0.5.0), codetools(v.0.2-16), preprocessCore(v.1.45.0), units(v.0.6-2), withr(v.2.1.2), colorspace(v.1.3-2), GOSemSim(v.2.8.0), knitr(v.1.21), rstudioapi(v.0.9.0), stats4(v.3.5.2), Vennerable(v.3.1.0.9000), robustbase(v.0.93-3), DOSE(v.3.8.0), labeling(v.0.3), urltools(v.1.7.1), GenomeInfoDbData(v.1.2.0), bit64(v.0.9-7), farver(v.1.1.0), rprojroot(v.1.3-2), xfun(v.0.4), R6(v.2.3.0), doParallel(v.1.0.14), GenomeInfoDb(v.1.18.1), locfit(v.1.5-9.1), bitops(v.1.0-6), fgsea(v.1.8.0), gridGraphics(v.0.3-0), DelayedArray(v.0.8.0), assertthat(v.0.2.0), scales(v.1.0.0), ggraph(v.1.0.2), nnet(v.7.3-12), enrichplot(v.1.2.0), gtable(v.0.2.0), sva(v.3.30.1), processx(v.3.2.1), rlang(v.0.3.1), genefilter(v.1.64.0), splines(v.3.5.2), rtracklayer(v.1.42.1), lazyeval(v.0.2.1), acepack(v.1.4.1), europepmc(v.0.3), checkmate(v.1.9.0), yaml(v.2.2.0), reshape2(v.1.4.3), GenomicFeatures(v.1.34.1), backports(v.1.1.3), qvalue(v.2.14.1), Hmisc(v.4.1-1), RBGL(v.1.58.1), clusterProfiler(v.3.10.1), tools(v.3.5.2), usethis(v.1.4.0), ggplotify(v.0.0.3), ggplot2(v.3.1.0), gplots(v.3.0.1), RColorBrewer(v.1.1-2), sessioninfo(v.1.1.1), ggridges(v.0.5.1), Rcpp(v.1.0.0), plyr(v.1.8.4), base64enc(v.0.1-3), progress(v.1.2.0), zlibbioc(v.1.28.0), purrr(v.0.2.5), RCurl(v.1.95-4.11), ps(v.1.3.0), prettyunits(v.1.0.2), rpart(v.4.1-13), viridis(v.0.5.1), cowplot(v.0.9.4), S4Vectors(v.0.20.1), SummarizedExperiment(v.1.12.0), ggrepel(v.0.8.0), cluster(v.2.0.7-1), colorRamps(v.2.3), fs(v.1.2.6), variancePartition(v.1.12.1), magrittr(v.1.5), data.table(v.1.11.8), openxlsx(v.4.1.0), DO.db(v.2.9), triebeard(v.0.3.0), packrat(v.0.5.0), matrixStats(v.0.54.0), pkgload(v.1.0.2), hms(v.0.4.2), evaluate(v.0.12), xtable(v.1.8-3), pbkrtest(v.0.4-7), XML(v.3.98-1.16), IRanges(v.2.16.0), gridExtra(v.2.3), testthat(v.2.0.1), compiler(v.3.5.2), biomaRt(v.2.38.0), tibble(v.2.0.0), KernSmooth(v.2.23-15), crayon(v.1.3.4), minqa(v.1.2.4), htmltools(v.0.3.6), mgcv(v.1.8-26), corpcor(v.1.6.9), Formula(v.1.2-3), tidyr(v.0.8.2), geneplotter(v.1.60.0), DBI(v.1.0.0), tweenr(v.1.0.1), MASS(v.7.3-51.1), Matrix(v.1.2-15), cli(v.1.0.1), quadprog(v.1.5-5), gdata(v.2.18.0), bindr(v.0.1.1), igraph(v.1.2.2), GenomicRanges(v.1.34.0), pkgconfig(v.2.0.2), rvcheck(v.0.1.3), GenomicAlignments(v.1.18.1), foreign(v.0.8-71), xml2(v.1.2.0), foreach(v.1.4.4), annotate(v.1.60.0), XVector(v.0.22.0), stringr(v.1.3.1), callr(v.3.1.1), digest(v.0.6.18), graph(v.1.60.0), Biostrings(v.2.50.2), rmarkdown(v.1.11), fastmatch(v.1.1-0), htmlTable(v.1.13.1), edgeR(v.3.24.3), directlabels(v.2018.05.22), Rsamtools(v.1.34.0), gtools(v.3.8.1), nloptr(v.1.2.1), nlme(v.3.1-137), jsonlite(v.1.6), desc(v.1.2.0), viridisLite(v.0.3.0), limma(v.3.38.3), pillar(v.1.3.1), lattice(v.0.20-38), DEoptimR(v.1.0-8), httr(v.1.4.0), pkgbuild(v.1.0.2), survival(v.2.43-3), GO.db(v.3.7.0), glue(v.1.3.0), remotes(v.2.0.2), zip(v.1.0.0), UpSetR(v.1.3.3), iterators(v.1.0.10), pander(v.0.6.3), bit(v.1.1-14), ggforce(v.0.1.3), stringi(v.1.2.4), blob(v.1.1.1), DESeq2(v.1.22.2), latticeExtra(v.0.6-28), caTools(v.1.17.1.1), memoise(v.1.1.0) and dplyr(v.0.7.8)

## Saving to 20190115_03_differential_expression-v20190115.rda.xz
LS0tCnRpdGxlOiAiMjAxOTAxMTY6IERpZmZlcmVudGlhbCBFeHByZXNzaW9uIGZvciBUTlNlcSBvZiBTcHlvZ2VuZXMuICgyMDE3KSIKYXV0aG9yOiAiYXRiIgpkYXRlOiAiYHIgU3lzLkRhdGUoKWAiCm91dHB1dDoKICBodG1sX2RvY3VtZW50OgogICAgY29kZV9kb3dubG9hZDogdHJ1ZQogICAgY29kZV9mb2xkaW5nOiBzaG93CiAgICBmaWdfY2FwdGlvbjogdHJ1ZQogICAgZmlnX2hlaWdodDogNwogICAgZmlnX3dpZHRoOiA3CiAgICBoaWdobGlnaHQ6IHRhbmdvCiAgICBrZWVwX21kOiBmYWxzZQogICAgbW9kZTogc2VsZmNvbnRhaW5lZAogICAgbnVtYmVyX3NlY3Rpb25zOiB0cnVlCiAgICBzZWxmX2NvbnRhaW5lZDogdHJ1ZQogICAgdGhlbWU6IHJlYWRhYmxlCiAgICB0b2M6IHRydWUKICAgIHRvY19mbG9hdDoKICAgICAgY29sbGFwc2VkOiBmYWxzZQogICAgICBzbW9vdGhfc2Nyb2xsOiBmYWxzZQogIHJtZGZvcm1hdHM6OnJlYWR0aGVkb3duOgogICAgY29kZV9kb3dubG9hZDogdHJ1ZQogICAgY29kZV9mb2xkaW5nOiBzaG93CiAgICBkZl9wcmludDogcGFnZWQKICAgIGZpZ19jYXB0aW9uOiB0cnVlCiAgICBmaWdfaGVpZ2h0OiA3CiAgICBmaWdfd2lkdGg6IDcKICAgIGhpZ2hsaWdodDogdGFuZ28KICAgIHdpZHRoOiAzMDAKICAgIGtlZXBfbWQ6IGZhbHNlCiAgICBtb2RlOiBzZWxmY29udGFpbmVkCiAgICB0b2NfZmxvYXQ6IHRydWUKICBCaW9jU3R5bGU6Omh0bWxfZG9jdW1lbnQ6CiAgICBjb2RlX2Rvd25sb2FkOiB0cnVlCiAgICBjb2RlX2ZvbGRpbmc6IHNob3cKICAgIGZpZ19jYXB0aW9uOiB0cnVlCiAgICBmaWdfaGVpZ2h0OiA3CiAgICBmaWdfd2lkdGg6IDcKICAgIGhpZ2hsaWdodDogdGFuZ28KICAgIGtlZXBfbWQ6IGZhbHNlCiAgICBtb2RlOiBzZWxmY29udGFpbmVkCiAgICB0b2NfZmxvYXQ6IHRydWUKLS0tCgo8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgpib2R5LCB0ZCB7CiAgZm9udC1zaXplOiAxNnB4Owp9CmNvZGUucnsKICBmb250LXNpemU6IDE2cHg7Cn0KcHJlIHsKIGZvbnQtc2l6ZTogMTZweAp9Cjwvc3R5bGU+CgpgYGB7ciBvcHRpb25zLCBpbmNsdWRlPUZBTFNFfQpsaWJyYXJ5KCJocGdsdG9vbHMiKQp0dCA8LSBkZXZ0b29sczo6bG9hZF9hbGwoIn4vaHBnbHRvb2xzIikKa25pdHI6Om9wdHNfa25pdCRzZXQod2lkdGg9MTIwLAogICAgICAgICAgICAgICAgICAgICBwcm9ncmVzcz1UUlVFLAogICAgICAgICAgICAgICAgICAgICB2ZXJib3NlPVRSVUUsCiAgICAgICAgICAgICAgICAgICAgIGVjaG89VFJVRSkKa25pdHI6Om9wdHNfY2h1bmskc2V0KGVycm9yPVRSVUUsCiAgICAgICAgICAgICAgICAgICAgICBkcGk9OTYpCm9sZF9vcHRpb25zIDwtIG9wdGlvbnMoZGlnaXRzPTQsCiAgICAgICAgICAgICAgICAgICAgICAgbWF4LnByaW50PTEyMCwKICAgICAgICAgICAgICAgICAgICAgICBzdHJpbmdzQXNGYWN0b3JzPUZBTFNFLAogICAgICAgICAgICAgICAgICAgICAgIGtuaXRyLmR1cGxpY2F0ZS5sYWJlbD0iYWxsb3ciKQpnZ3Bsb3QyOjp0aGVtZV9zZXQoZ2dwbG90Mjo6dGhlbWVfYncoYmFzZV9zaXplPTEwKSkKcnVuZGF0ZSA8LSBmb3JtYXQoU3lzLkRhdGUoKSwgZm9ybWF0PSIlWSVtJWQiKQpwcmV2aW91c19maWxlIDwtICIyMDE5MDExNV8wMl9zYW1wbGVfZXN0aW1hdGlvbi5SbWQiCnZlciA8LSAiMjAxOTAxMTUiCgp0bXAgPC0gc20obG9hZG1lKGZpbGVuYW1lPXBhc3RlMChnc3ViKHBhdHRlcm49IlxcLlJtZCIsIHJlcGxhY2U9IiIsIHg9cHJldmlvdXNfZmlsZSksICItdiIsIHZlciwgIi5yZGEueHoiKSkpCgpybWRfZmlsZSA8LSAiMjAxOTAxMTVfMDNfZGlmZmVyZW50aWFsX2V4cHJlc3Npb24uUm1kIgpgYGAKCiMgRGlmZmVyZW50aWFsIEV4cHJlc3Npb24sIFNweW9nZW5lczogYHIgdmVyYAoKVGhpcyB3b3Jrc2hlZXQgcGVyZm9ybXMgYSBzZXQgb2YgcGFpcndpc2UgY29tcGFyaXNvbnMgb2YgdGhlIGNvdW50cyBmb3IgdGhpcyB0bnNlcSBleHBlcmltZW50CmdpdmVuIHRoZSBzdmEgc3Vycm9nYXRlIGFkanVzdG1lbnRzLgoKVGhpcyBpcyBiZWluZyBwZXJmb3JtZWQgdmlhIGxpbW1hL2VkZ2VyL2Rlc2VxMiwgd2hpY2ggb25lIG1heSByaWdodGx5IGFyZ3VlIGlzIG5vdAplbnRpcmVseSBhcHByb3ByaWF0ZSBmb3IgVE5TZXEgZGF0YS4gIE9uIHRoZSBvdGhlciBoYW5kLCBhcyBhIGdlbmVyYWwgbWV0cmljIG9mCmNoYW5naW5nIGZpdG5lc3MsIGl0IHByb3ZpZGVzIHNvbWUgaW50ZXJlc3RpbmcgaW5mb3JtYXRpb24uCgojIyBQZXJmb3JtIFBhaXJ3aXNlIGFuYWx5c2VzCgpgYGB7ciBpbml0aWFsX2VzdGltYXRpb24sIGZpZy5zaG93PSJoaWRlIn0KaW5pdGlhbF9kaWZmIDwtIHNtKGFsbF9wYWlyd2lzZShpbnB1dD1ycG1pX2ZpbHQsIG1vZGVsX2JhdGNoPSJzdmFzZXEiKSkKYGBgCgphbGxfcGFpcndpc2UoKSBpcyByZXNwb25zaWJsZSBmb3IgZm9sbG93aW5nOgoKMS4gIENyZWF0aW5nIGFuIGV4cGVyaW1lbnRhbCBtb2RlbCB3aGljaCBpbmNsdWRlcyBzdXJyb2dhdGUgZXN0aW1hdGVzIGZyb20gc3Zhc2VxLgoyLiAgQ2FsbGluZyBsaW1tYSwgRWRnZVIsIGFuZCBERVNFcTIgd2l0aCB0aGUgZGF0YSBhbmQgdGhhdCBtb2RlbCBmb3IgZXZlcnkKICAgIHBvc3NpYmxlIHBhaXJ3aXNlIGNvbnRyYXN0IGluIHRoZSBkYXRhLiAoT3B0aW9uYWxseSBpdCB3aWxsIG5vdyBkbyBFQlNlcSwgdG9vLikKMy4gIENhbGxpbmcgYSBiYXNpYyBtZXRob2Qgd2hpY2ggc2ltcGx5IHN1YnRyYWN0cyBsb2cyIHNjYWxlZCB2YWx1ZXMgYXMgYSBmb3JtCiAgICBvZiBuZWdhdGl2ZSBjb250cm9sLgo0LiAgQ29sbGVjdGluZyB0aG9zZSByZXN1bHRzLgoKQW1vbmcgdGhlIHN1bW1hcmllcyBpdCBwcm92aWRlcyBpcyBhIGhlYXRtYXAgb2YgaG93IHNpbWlsYXIgZWFjaCBtZXRob2Qgd2FzIGZvcgpldmVyeSBjb250cmFzdC4KCmBgYHtyIGNvbXBhcmVfaGVhdG1hcH0KaW5pdGlhbF9kaWZmJGNvbXBhcmlzb24kaGVhdAojIyBBbGwgY29udHJhc3RzIGFyZSBxdWl0ZSBzaW1pbGFyLgojIyBUaGUgbG93ZXN0IGNvcnJlbGF0aW9uIGNvZWZmaWNpZW50IGFtb25nIHRoZSBtZXRob2RzL2NvbnRyYXN0cyBpcyB+IDAuNiBhbmQgaXMKIyMgYmV0d2VlbiB0aGUgJ3JlYWwnIG1ldGhvZHMgYW5kIG15IHN0dXBpZCBiYXNpYyBtZXRob2QsIHdoaWNoIG1vc3RseSB0ZWxscyBtZQojIyB0aGF0IHN2YSBhY3R1YWxseSBkaWQgc29tZXRoaW5nLgppbml0aWFsX2RpZmYkY29tcGFyaXNvbltbN11dCiMjIEhlcmUgd2Ugc2VlIHRoYXQgdGhlIGxvZzJGQ3MgZnJvbSBsaW1tYSBhbmQgREVTZXEyIGFyZSB2ZXJ5IHNpbWlsYXIuCiMjIFRoZSBibHVlIGxpbmUgaXMgdGhlIGlkZW50aXR5OyBzbyBERVNlcSBpcyBzZWVpbmcgc2xpZ2h0bHkgaGlnaGVyCiMjIHZhbHVlcyB0aGFuIGxpbW1hIGFsbW9zdCBhY3Jvc3MgdGhlIGJvYXJkLgppbml0aWFsX2RpZmYkY29tcGFyaXNvbltbOV1dCiMjIFRoZSBsb3dlciBjb3JyZWxhdGlvbiBmb3IgdGhlIGJhc2ljIGlzIGNsZWFybHkgY29taW5nIGZyb20gdGhhdCBibG9iIG5lYXIgMCBsb2dGQywKIyMgYnV0IGZvciB0aGUgbW9zdCBwYXJ0LCBiYXNpYyBhZ3JlZXMgd2l0aCB0aGUgc3ZhIGFkanVzdGVkIGxpbW1hLgpgYGAKCiMjIENvbWJpbmUgdGhlIHRhYmxlcwoKY29tYmluZV9kZV90YWJsZXMoKSBkb2VzIHdoYXQgaXQgc2F5cyBvbiB0aGUgdGluLiAgV2hlbiBwcm92aWRlZCBhbiBleGNlbApmaWxlbmFtZSwgaXQgd2lsbCBhbHNvIHB1dCB0aGUgY29tYmluZWQgdGFibGVzIGludG8gdGhlIGV4Y2VsIGZpbGUgYW5kIHRyeSB0bwphZGQgaW4gc29tZSBwcmV0dHkgcGxvdHMgdG8gdGhlIHJlc3VsdGluZyBleGNlbCBmaWxlLgoKYGBge3IgY29tYmluZX0Ka2VlcGVycyA8LSBsaXN0KCJ0MnQxIiA9IGMoInJwbWlfdDIiLCAidGh5X3QxIiksCiAgICAgICAgICAgICAgICAidDN0MSIgPSBjKCJycG1pX3QzIiwgInRoeV90MSIpLAogICAgICAgICAgICAgICAgInQyem4iID0gYygicnBtaV90Ml9oaWdoem4iLCAicnBtaV90Ml9sb3d6biIpLAogICAgICAgICAgICAgICAgInQzem4iID0gYygicnBtaV90M19oaWdoem4iLCAicnBtaV90M19sb3d6biIpLAogICAgICAgICAgICAgICAgInRpbWVfaGlnaHpuIiA9IGMoInJwbWlfdDNfaGlnaHpuIiwgInJwbWlfdDJfaGlnaHpuIiksCiAgICAgICAgICAgICAgICAidGltZV9sb3d6biIgPSBjKCJycG1pX3QzX2xvd3puIiwgInJwbWlfdDJfbG93em4iKSwKICAgICAgICAgICAgICAgICJ0Ml9ycG1pX2hpZ2h6biIgPSBjKCJycG1pX3QyX2hpZ2h6biIsICJycG1pX3QyIiksCiAgICAgICAgICAgICAgICAidDNfcnBtaV9oaWdoem4iID0gYygicnBtaV90M19oaWdoem4iLCAicnBtaV90MyIpLAogICAgICAgICAgICAgICAgInQyX3JwbWlfbG93em4iID0gYygicnBtaV90Ml9sb3d6biIsICJycG1pX3QyIiksCiAgICAgICAgICAgICAgICAidDNfcnBtaV9sb3d6biIgPSBjKCJycG1pX3QzX2xvd3puIiwgInJwbWlfdDMiKQogICAgICAgICAgICAgICAgKQojIyBFYWNoIGVsZW1lbnQgb2Yga2VlcGVycyBpdCBhIG5hbWUgb2YgdGhlIGNvbnRyYXN0IHRvIHBlcmZvcm0gZm9sbG93ZWQgYnkgYSAyIGVsZW1lbnQgbGlzdAojIyB3aXRoIHRoZSBudW1lcmF0b3IgYW5kIGRlbm9taW5hdG9yLgppbml0aWFsX3dyaXRlIDwtIHNtKGNvbWJpbmVfZGVfdGFibGVzKGluaXRpYWxfZGlmZiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBleGNlbD1wYXN0ZTAoImV4Y2VsLyIsIHJ1bmRhdGUsICJfaW5pdGlhbF9kaWZmLXYiLCB2ZXIsICIueGxzeCIpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGtlZXBlcnM9a2VlcGVycykpCmBgYAoKVGhlIGRhdGEgZ2VuZXJhdGVkIGJ5IGNvbWJpbmVfZGVfdGFibGVzKCkgaXMgc3VwcG9zZWQgdG8gZ2l2ZSBtZSBzb21lIHBsb3RzCndoaWNoIHdlIG1heSB1c2UgdG8gZXZhbHVhdGUgaG93IHdlbGwgdGhlIGRhdGEgY2FtZSB0b2dldGhlciBhcyB3ZWxsIGFzIGhvdwpzaW1pbGFyIHRoZSBmaW5hbCByZXN1bHRzIGFyZSBmb3IgbGltbWEvZGVzZXEvZWRnZXIuCgojIyBGaW5kIHNpZ25pZmljYW50IGdlbmVzCgpgYGB7ciBzaWduaWZpY2FuY2V9CnNpZ193cml0ZSA8LSBzbShleHRyYWN0X3NpZ25pZmljYW50X2dlbmVzKAogIGluaXRpYWxfd3JpdGUsCiAgZXhjZWw9cGFzdGUwKCJleGNlbC8iLCBydW5kYXRlLCAiX3NpZ25pZmljYW50LXYiLCB2ZXIsICIueGxzeCIpKSkKYGBgCgpgYGB7ciBzYXZlbWV9Cm1lc3NhZ2UocGFzdGUwKCJUaGlzIGlzIGhwZ2x0b29scyBjb21taXQ6ICIsIGdldF9naXRfY29tbWl0KCkpKQpwYW5kZXI6OnBhbmRlcihzZXNzaW9uSW5mbygpKQp0aGlzX3NhdmUgPC0gcGFzdGUwKGdzdWIocGF0dGVybj0iXFwuUm1kIiwgcmVwbGFjZT0iIiwgeD1ybWRfZmlsZSksICItdiIsIHZlciwgIi5yZGEueHoiKQptZXNzYWdlKHBhc3RlMCgiU2F2aW5nIHRvICIsIHRoaXNfc2F2ZSkpCnRtcCA8LSBzbShzYXZlbWUoZmlsZW5hbWU9dGhpc19zYXZlKSkKYGBgCg==