https://github.com/csoneson/powsimr
Power analysis is essential to optimize the design of RNA-seq experiments and to assess and compare the power to detect differentially expressed genes. PowsimR is a flexible tool to simulate and evaluate differential expression from bulk and especially single-cell RNA-seq data making it suitable for a priori and posterior power analyses.
Science Score: 13.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
○codemeta.json file
-
○.zenodo.json file
-
✓DOI references
Found 4 DOI reference(s) in README -
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (9.7%) to scientific vocabulary
Repository
Power analysis is essential to optimize the design of RNA-seq experiments and to assess and compare the power to detect differentially expressed genes. PowsimR is a flexible tool to simulate and evaluate differential expression from bulk and especially single-cell RNA-seq data making it suitable for a priori and posterior power analyses.
Basic Info
- Host: GitHub
- Owner: csoneson
- License: artistic-2.0
- Default Branch: master
- Homepage: https://bvieth.github.io/powsimR/
- Size: 64.4 MB
Statistics
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
- Releases: 0
https://github.com/csoneson/powsimR/blob/master/
# powsimR: Power analysis for bulk and single cell RNA-seq experiments
Please also consult my Github Page of
[powsimR](https://bvieth.github.io/powsimR/) made with
[pkgdown](http://pkgdown.r-lib.org/index.html)\!
## Installation Guide
For the installation, the R package `devtools` is needed.
``` r
install.packages("devtools")
library(devtools)
```
I recommend to install first the dependencies manually and then powsimR.
If you plan to use MAGIC for imputation, then please follow their
[instruction](https://github.com/KrishnaswamyLab/MAGIC) to install the
python implementation beforre installing
powsimR.
``` r
ipak <- function(pkg, repository = c("CRAN", "Bioconductor", "github")) {
new.pkg <- pkg[!(pkg %in% installed.packages()[, "Package"])]
# new.pkg <- pkg
if (length(new.pkg)) {
if (repository == "CRAN") {
install.packages(new.pkg, dependencies = TRUE)
}
if (repository == "Bioconductor") {
if (strsplit(version[["version.string"]], " ")[[1]][3] > "3.5.0") {
if (!requireNamespace("BiocManager")) {
install.packages("BiocManager")
}
BiocManager::install(new.pkg, dependencies = TRUE, ask = FALSE)
}
if (strsplit(version[["version.string"]], " ")[[1]][3] < "3.5.0") {
source("https://bioconductor.org/biocLite.R")
biocLite(new.pkg, dependencies = TRUE, ask = FALSE)
}
}
if (repository == "github") {
devtools::install_github(new.pkg, build_vignettes = FALSE, force = FALSE,
dependencies = TRUE)
}
}
}
# CRAN PACKAGES
cranpackages <- c("broom", "cobs", "cowplot", "data.table", "devtools", "doParallel",
"dplyr", "drc", "DrImpute", "fastICA", "fitdistrplus", "foreach", "gamlss.dist",
"ggExtra", "ggplot2", "ggthemes", "grDevices", "glmnet", "grid", "gtools",
"Hmisc", "kernlab", "MASS", "MBESS", "matrixStats", "mclust", "methods",
"minpack.lm", "moments", "msir", "NBPSeq", "nonnest2", "parallel", "penalized",
"plyr", "pscl", "reshape2", "Rmagic", "rsvd", "Rtsne", "scales", "Seurat",
"snow", "stats", "tibble", "tidyr", "VGAM", "ZIM")
ipak(cranpackages, repository = "CRAN")
# BIOCONDUCTOR
biocpackages <- c("AnnotationDbi", "bayNorm", "baySeq", "Biobase", "BiocGenerics",
"BiocParallel", "DEDS", "DESeq2", "EBSeq", "edgeR", "IHW", "iCOBRA", "limma",
"Linnorm", "MAST", "monocle", "NOISeq", "qvalue", "ROTS", "RUVSeq", "S4Vectors",
"scater", "scDD", "scde", "scone", "scran", "SCnorm", "SingleCellExperiment",
"SummarizedExperiment", "zinbwave")
ipak(biocpackages, repository = "Bioconductor")
# GITHUB
githubpackages <- c("nghiavtr/BPSC", "cz-ye/DECENT", "mohuangx/SAVER", "statOmics/zingeR")
ipak(githubpackages, repository = "github")
```
To check whether all dependencies are installed, you can run the
following lines:
``` r
powsimRdeps <- data.frame(Package = c(cranpackages,
biocpackages,
sapply(strsplit(githubpackages, "/"), "[[", 2)),
stringsAsFactors = F)
ip <- as.data.frame(installed.packages()[,c(1,3:4)], stringsAsFactors = F)
ip.check <- cbind(powsimRdeps,
Version = ip[match(powsimRdeps$Package, rownames(ip)),"Version"])
table(is.na(ip.check$Version)) # all should be FALSE
```
After installing the dependencies, powsimR can be installed by using
devtools as
well.
``` r
devtools::install_github("bvieth/powsimR", build_vignettes = TRUE, dependencies = FALSE)
library("powsimR")
```
Alternative, you can try to install powsimR and its dependencies
directly using devtools:
``` r
devtools::install_github("bvieth/powsimR")
```
## User Guide
For examples and tips on using the package, please consult the vignette
after successful installation by
``` r
browseVignettes("powsimR")
```
Some users have experienced issues installing powsimR due to vignette
compilation errors. If that is the case, you can leave out building the
vignette and read it on my Github Page of
[powsimR](https://bvieth.github.io/powsimR/articles/powsimR.html) or
download it as a html file
[here](https://github.com/bvieth/powsimR/tree/master/inst/doc/powsimR.html).
### DLLs and ulimit
Note that the error maximal number of DLLs reached might occur due to
the loading of many shared objects by Bioconductor packages. Restarting
the R session after installing dependencies / powsimR will help.
Starting with R version 3.4.0, one can set the environmental variable
R\_MAX\_NUM\_DLLS to a higher number. See `?Startup()` for more
information. I recommend to increase the maximum number of DLLs that can
be loaded to 500. The environmental variable R\_MAX\_NUM\_DLLS can be
set in R\_HOME/etc/Renviron prior to starting R. For that locate the
Renviron file and add the following line: R\_MAX\_NUM\_DLLS=xy where xy
is the number of DLLs. On my Ubuntu machine, the Renviron file is in
/usr/lib/R/etc/ and I can set it to 500.
In addition, the user limits for open files (unix: ulimit) might have to
be set to a higher number to accomodate the increase in DLLs. Please
check out the help pages for
[MACs](https://gist.github.com/tombigel/d503800a282fcadbee14b537735d202c)
and
[Linux](https://glassonionblog.wordpress.com/2013/01/27/increase-ulimit-and-file-descriptors-limit/)
for guidance.
## Citation
Please use the following entry for citing powsimR.
``` r
citation("powsimR")
```
powsimR is published in
[Bioinformatics](https://doi.org/10.1093/bioinformatics/btx435). A
preprint paper is also on [bioRxiv](https://doi.org/10.1101/117150).
## Notes
Please send bug reports and feature requests by opening a new issue on
[this page](https://github.com/bvieth/powsimR/issues).
## R Session Info
``` r
library(powsimR)
#> Loading required package: gamlss.dist
#> Loading required package: MASS
#> Warning: replacing previous import 'DECENT::lrTest' by 'MAST::lrTest' when
#> loading 'powsimR'
#> Registered S3 method overwritten by 'R.oo':
#> method from
#> throw.default R.methodsS3
#> Warning: replacing previous import 'parallel::makeCluster' by
#> 'snow::makeCluster' when loading 'powsimR'
#> Warning: replacing previous import 'parallel::stopCluster' by
#> 'snow::stopCluster' when loading 'powsimR'
#> Warning: replacing previous import 'penalized::predict' by 'stats::predict'
#> when loading 'powsimR'
#> Warning: replacing previous import 'zinbwave::glmWeightedF' by
#> 'zingeR::glmWeightedF' when loading 'powsimR'
sessionInfo()
#> R version 3.6.0 (2019-04-26)
#> Platform: x86_64-pc-linux-gnu (64-bit)
#> Running under: Ubuntu 18.04.2 LTS
#>
#> Matrix products: default
#> BLAS: /usr/lib/x86_64-linux-gnu/blas/libblas.so.3.7.1
#> LAPACK: /usr/lib/x86_64-linux-gnu/lapack/liblapack.so.3.7.1
#>
#> locale:
#> [1] LC_CTYPE=en_US.UTF-8 LC_NUMERIC=C
#> [3] LC_TIME=de_DE.UTF-8 LC_COLLATE=en_US.UTF-8
#> [5] LC_MONETARY=de_DE.UTF-8 LC_MESSAGES=en_US.UTF-8
#> [7] LC_PAPER=de_DE.UTF-8 LC_NAME=C
#> [9] LC_ADDRESS=C LC_TELEPHONE=C
#> [11] LC_MEASUREMENT=de_DE.UTF-8 LC_IDENTIFICATION=C
#>
#> attached base packages:
#> [1] stats graphics grDevices utils datasets methods base
#>
#> other attached packages:
#> [1] powsimR_1.1.5 gamlss.dist_5.1-4 MASS_7.3-51.4
#>
#> loaded via a namespace (and not attached):
#> [1] mixtools_1.1.0 softImpute_1.4
#> [3] minpack.lm_1.2-1 lattice_0.20-38
#> [5] vctrs_0.2.0 fastICA_1.2-2
#> [7] mgcv_1.8-28 penalized_0.9-51
#> [9] blob_1.2.0 survival_2.44-1.1
#> [11] Rmagic_1.4.0 later_0.8.0
#> [13] nloptr_1.2.1 DBI_1.0.0
#> [15] R.utils_2.9.0 SingleCellExperiment_1.6.0
#> [17] Linnorm_2.8.0 dqrng_0.2.1
#> [19] zlibbioc_1.30.0 MatrixModels_0.4-1
#> [21] pspline_1.0-18 htmlwidgets_1.3
#> [23] mvtnorm_1.0-11 future_1.14.0
#> [25] UpSetR_1.4.0 parallel_3.6.0
#> [27] scater_1.12.2 irlba_2.3.3
#> [29] DEoptimR_1.0-8 lars_1.2
#> [31] Rcpp_1.0.2 KernSmooth_2.23-15
#> [33] DT_0.7 promises_1.0.1
#> [35] gdata_2.18.0 DDRTree_0.1.5
#> [37] DelayedArray_0.10.0 limma_3.40.6
#> [39] vegan_2.5-5 Hmisc_4.2-0
#> [41] ShortRead_1.42.0 apcluster_1.4.7
#> [43] RSpectra_0.15-0 msir_1.3.2
#> [45] mnormt_1.5-5 digest_0.6.20
#> [47] qlcMatrix_0.9.7 sctransform_0.2.0
#> [49] cowplot_1.0.0 glmnet_2.0-18
#> [51] pkgconfig_2.0.2 docopt_0.6.1
#> [53] DelayedMatrixStats_1.6.0 ggbeeswarm_0.6.0
#> [55] iterators_1.0.12 minqa_1.2.4
#> [57] lavaan_0.6-4 reticulate_1.13
#> [59] SummarizedExperiment_1.14.0 spam_2.2-2
#> [61] beeswarm_0.2.3 modeltools_0.2-22
#> [63] xfun_0.8 zoo_1.8-6
#> [65] tidyselect_0.2.5 ZIM_1.1.0
#> [67] reshape2_1.4.3 purrr_0.3.2
#> [69] kernlab_0.9-27 pcaPP_1.9-73
#> [71] EDASeq_2.18.0 viridisLite_0.3.0
#> [73] snow_0.4-3 rtracklayer_1.44.2
#> [75] rlang_0.4.0 hexbin_1.27.3
#> [77] glue_1.3.1 RColorBrewer_1.1-2
#> [79] registry_0.5-1 fpc_2.2-3
#> [81] matrixStats_0.54.0 stringr_1.4.0
#> [83] pkgmaker_0.27 fields_9.8-3
#> [85] ggsignif_0.5.0 DESeq2_1.24.0
#> [87] SparseM_1.77 httpuv_1.5.1
#> [89] class_7.3-15 BPSC_0.99.2
#> [91] BiocNeighbors_1.2.0 annotate_1.62.0
#> [93] jsonlite_1.6 XVector_0.24.0
#> [95] bit_1.1-14 mime_0.7
#> [97] gridExtra_2.3 gplots_3.0.1.1
#> [99] Rsamtools_2.0.0 zingeR_0.1.0
#> [101] stringi_1.4.3 gmodels_2.18.1
#> [103] gsl_2.1-6 bitops_1.0-6
#> [105] maps_3.3.0 RSQLite_2.1.2
#> [107] tidyr_0.8.3 pheatmap_1.0.12
#> [109] data.table_1.12.2 DEDS_1.58.0
#> [111] energy_1.7-6 rstudioapi_0.10
#> [113] GenomicAlignments_1.20.1 nlme_3.1-140
#> [115] qvalue_2.16.0 scran_1.12.1
#> [117] fastcluster_1.1.25 locfit_1.5-9.1
#> [119] scone_1.8.0 listenv_0.7.0
#> [121] cobs_1.3-3 R.oo_1.22.0
#> [123] prabclus_2.3-1 segmented_1.0-0
#> [125] BiocGenerics_0.30.0 ROTS_1.12.0
#> [127] munsell_0.5.0 R.methodsS3_1.7.1
#> [129] moments_0.14 hwriter_1.3.2
#> [131] caTools_1.17.1.2 codetools_0.2-16
#> [133] coda_0.19-3 Biobase_2.44.0
#> [135] GenomeInfoDb_1.20.0 vipor_0.4.5
#> [137] htmlTable_1.13.1 bayNorm_1.2.0
#> [139] lsei_1.2-0 rARPACK_0.11-0
#> [141] xtable_1.8-4 SAVER_1.1.1
#> [143] ROCR_1.0-7 diptest_0.75-7
#> [145] formatR_1.7 lpsymphony_1.12.0
#> [147] abind_1.4-5 FNN_1.1.3
#> [149] RANN_2.6.1 sparsesvd_0.2
#> [151] CompQuadForm_1.4.3 GenomicRanges_1.36.0
#> [153] bibtex_0.4.2 tibble_2.1.3
#> [155] ggdendro_0.1-20 cluster_2.1.0
#> [157] future.apply_1.3.0 zeallot_0.1.0
#> [159] Matrix_1.2-17 prettyunits_1.0.2
#> [161] shinyBS_0.61 NOISeq_2.28.0
#> [163] shinydashboard_0.7.1 mclust_5.4.5
#> [165] igraph_1.2.4.1 slam_0.1-45
#> [167] testthat_2.2.1 doSNOW_1.0.18
#> [169] htmltools_0.3.6 yaml_2.2.0
#> [171] GenomicFeatures_1.36.4 XML_3.98-1.20
#> [173] ggpubr_0.2.1 DrImpute_1.0
#> [175] foreign_0.8-71 withr_2.1.2
#> [177] fitdistrplus_1.0-14 BiocParallel_1.18.0
#> [179] aroma.light_3.14.0 bit64_0.9-7
#> [181] rngtools_1.4 doRNG_1.7.1
#> [183] foreach_1.4.7 robustbase_0.93-5
#> [185] outliers_0.14 Biostrings_2.52.0
#> [187] combinat_0.0-8 rsvd_1.0.2
#> [189] iCOBRA_1.12.1 memoise_1.1.0
#> [191] evaluate_0.14 VGAM_1.1-1
#> [193] nonnest2_0.5-2 geneplotter_1.62.0
#> [195] permute_0.9-5 fdrtool_1.2.15
#> [197] acepack_1.4.1 edgeR_3.26.5
#> [199] checkmate_1.9.4 npsurv_0.4-0
#> [201] truncnorm_1.0-8 DECENT_1.1.0
#> [203] tensorA_0.36.1 ellipse_0.4.1
#> [205] ggplot2_3.2.0 ggrepel_0.8.1
#> [207] scDD_1.8.0 tools_3.6.0
#> [209] stabledist_0.7-1 sandwich_2.5-1
#> [211] magrittr_1.5 RCurl_1.95-4.12
#> [213] pbivnorm_0.6.0 bayesm_3.1-2
#> [215] EBSeq_1.24.0 httr_1.4.0
#> [217] assertthat_0.2.1 rmarkdown_1.14
#> [219] boot_1.3-23 globals_0.12.4
#> [221] R6_2.4.0 Rhdf5lib_1.6.0
#> [223] nnet_7.3-12 progress_1.2.2
#> [225] genefilter_1.66.0 gtools_3.8.1
#> [227] statmod_1.4.32 BiocSingular_1.0.0
#> [229] rhdf5_2.28.0 splines_3.6.0
#> [231] colorspace_1.4-1 amap_0.8-17
#> [233] generics_0.0.2 stats4_3.6.0
#> [235] NBPSeq_0.3.0 base64enc_0.1-3
#> [237] compositions_1.40-2 baySeq_2.18.0
#> [239] pillar_1.4.2 HSMMSingleCell_1.4.0
#> [241] GenomeInfoDbData_1.2.1 plyr_1.8.4
#> [243] dotCall64_1.0-0 gtable_0.3.0
#> [245] SCnorm_1.6.0 monocle_2.12.0
#> [247] knitr_1.23 RcppArmadillo_0.9.600.4.0
#> [249] latticeExtra_0.6-28 biomaRt_2.40.3
#> [251] IRanges_2.18.1 ADGofTest_0.3
#> [253] copula_0.999-19.1 doParallel_1.0.14
#> [255] pscl_1.5.2 flexmix_2.3-15
#> [257] quantreg_5.42.1 AnnotationDbi_1.46.0
#> [259] broom_0.5.2 scales_1.0.0
#> [261] arm_1.10-1 backports_1.1.4
#> [263] IHW_1.12.0 S4Vectors_0.22.0
#> [265] densityClust_0.3 lme4_1.1-21
#> [267] blme_1.0-4 hms_0.5.0
#> [269] DESeq_1.36.0 Rtsne_0.15
#> [271] dplyr_0.8.3 shiny_1.3.2
#> [273] grid_3.6.0 numDeriv_2016.8-1.1
#> [275] bbmle_1.0.20 lazyeval_0.2.2
#> [277] dynamicTreeCut_1.63-1 Formula_1.2-3
#> [279] blockmodeling_0.3.4 crayon_1.3.4
#> [281] MAST_1.10.0 RUVSeq_1.18.0
#> [283] viridis_0.5.1 rpart_4.1-15
#> [285] compiler_3.6.0 zinbwave_1.6.0
```
Owner
- Name: Charlotte Soneson
- Login: csoneson
- Kind: user
- Website: http://csoneson.github.io/
- Twitter: CSoneson
- Repositories: 110
- Profile: https://github.com/csoneson
GitHub Events
Total
Last Year
Issues and Pull Requests
Last synced: about 2 years ago
All Time
- Total issues: 0
- Total pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Total issue authors: 0
- Total pull request authors: 0
- Average comments per issue: 0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 0
- Pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Issue authors: 0
- Pull request authors: 0
- Average comments per issue: 0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0