https://github.com/bvieth/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
-
○Committers with academic emails
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (13.1%) to scientific vocabulary
Keywords
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: bvieth
- License: artistic-2.0
- Language: HTML
- Default Branch: master
- Homepage: https://bvieth.github.io/powsimR/
- Size: 72.5 MB
Statistics
- Stars: 106
- Watchers: 7
- Forks: 24
- Open Issues: 8
- Releases: 3
Topics
Metadata Files
README.Rmd
---
output: github_document
---
```{r, echo = FALSE}
knitr::opts_chunk$set(
collapse = TRUE,
comment = "#>",
fig.path = "README-"
)
```
# `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)!
## :arrow_double_down: Installation Guide
For the installation, the R package `devtools` is needed.
```{r, echo=T, eval=F, tidy=T}
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 before installing powsimR.
```{r, echo=T, eval=F, tidy=T}
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] > "4.0.0"){
if (!requireNamespace("BiocManager")){
install.packages("BiocManager")
}
BiocManager::install(new.pkg, dependencies=TRUE, ask=FALSE)
}
if(strsplit(version[['version.string']], ' ')[[1]][3] < "3.6.0"){
stop(message("powsimR depends on packages and functions that are only available in R 4.0.0 and higher."))
}
}
if(repository=='github') {
devtools::install_github(new.pkg, build_vignettes = FALSE, force = FALSE, dependencies=TRUE)
}
}
}
# CRAN PACKAGES
cranpackages <- c("broom", "cobs", "cowplot",
"data.table", "doParallel", "dplyr", "DrImpute",
"fastICA", "fitdistrplus", "foreach", "future",
"gamlss.dist", "ggplot2", "ggpubr", "ggstance", "grDevices",
"grid", "Hmisc", "kernlab", "MASS", "magrittr", "MBESS", "Matrix",
"matrixStats", "mclust", "methods", "minpack.lm", "moments", "msir",
"NBPSeq", "nonnest2", "parallel", "penalized", "plyr", "pscl",
"reshape2", "Rmagic", "rsvd", "Rtsne", "scales", "Seurat", "snow", "sctransform",
"stats", "tibble", "tidyr", "truncnorm", "VGAM", "ZIM", "zoo")
ipak(cranpackages, repository='CRAN')
# BIOCONDUCTOR
biocpackages <- c("bayNorm", "baySeq", "BiocGenerics", "BiocParallel",
"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('cz-ye/DECENT', 'nghiavtr/BPSC',
'mohuangx/SAVER', 'statOmics/zingeR',
'Vivianstats/scImpute')
ipak(githubpackages, repository = 'github')
```
To check whether all dependencies are installed, you can run the following lines:
```{r depcheck, echo = TRUE, eval = FALSE, tidy = FALSE}
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, echo=T, eval=F, tidy=T}
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, echo=T, eval=F, tidy=T}
devtools::install_github("bvieth/powsimR")
```
## :book: User Guide
For examples and tips on using the package, please consult the vignette after successful installation by
```{r, echo=T, eval=F, tidy=T}
browseVignettes('powsimR')
```
Some users have experienced issues installing powsimR due to vignette compilation errors or because they are missing the necessary R packages to build the vignette, i.e. knitr and rmdformats. If that is the case, you can either install these dependencies or leave out building the vignette (by setting build_vignettes to FALSE) 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/blob/master/vignettes/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.
## :scroll: Citation
Please use the following entry for citing powsimR.
```{r, echo=T, eval=F, tidy=T}
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).
## :incoming_envelope: Notes
Please send bug reports and feature requests by opening a new issue on
[this page](https://github.com/bvieth/powsimR/issues).
I try to keep up to date with new developments / changes of methods implemented in powsimR, but if you encounter run errors while using a certain tool (e.g. for imputation), then I appreciate if you can post this as an [issue](https://github.com/bvieth/powsimR/issues).
## `R` Session Info
```{r}
library(powsimR)
sessionInfo()
```
Owner
- Name: Beate Vieth
- Login: bvieth
- Kind: user
- Location: Munich, Germany
- Company: LMU
- Repositories: 2
- Profile: https://github.com/bvieth
Post-Doc Computational Biology single-cell genomics
GitHub Events
Total
- Watch event: 3
- Issue comment event: 2
- Fork event: 1
Last Year
- Watch event: 3
- Issue comment event: 2
- Fork event: 1
Committers
Last synced: over 2 years ago
Top Committers
| Name | Commits | |
|---|---|---|
| Beate Vieth | v****e@g****m | 78 |
| giannimonaco | m****1@g****m | 2 |
Issues and Pull Requests
Last synced: 7 months ago
All Time
- Total issues: 67
- Total pull requests: 2
- Average time to close issues: 4 months
- Average time to close pull requests: 14 days
- Total issue authors: 57
- Total pull request authors: 2
- Average comments per issue: 1.91
- Average comments per pull request: 0.5
- Merged pull requests: 1
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 2
- Pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Issue authors: 2
- Pull request authors: 0
- Average comments per issue: 1.0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- swvanderlaan (5)
- gcrynen (3)
- ekernf01 (3)
- haniap (2)
- virenp (2)
- raivivek (1)
- eboamah (1)
- georgia-katsoula (1)
- ttriche (1)
- Vivianstats (1)
- mizuwatershui (1)
- fly4all (1)
- BenjaminATaylor (1)
- yoshiuva (1)
- mjdufort (1)
Pull Request Authors
- giannimonaco (1)
- ttriche (1)
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 2
- Total downloads: unknown
-
Total dependent packages: 0
(may contain duplicates) -
Total dependent repositories: 0
(may contain duplicates) - Total versions: 4
proxy.golang.org: github.com/bvieth/powsimr
- Documentation: https://pkg.go.dev/github.com/bvieth/powsimr#section-documentation
- License: artistic-2.0
-
Latest release: v1.2.4
published about 5 years ago
Rankings
proxy.golang.org: github.com/bvieth/powsimR
- Documentation: https://pkg.go.dev/github.com/bvieth/powsimR#section-documentation
- License: artistic-2.0
-
Latest release: v1.2.4
published about 5 years ago
Rankings
Dependencies
- R >= 4.0 depends
- gamlss.dist * depends
- BPSC * imports
- BiocGenerics * imports
- BiocParallel * imports
- DECENT * imports
- DESeq2 * imports
- DrImpute * imports
- EBSeq * imports
- Hmisc * imports
- IHW * imports
- Linnorm * imports
- MASS * imports
- MAST * imports
- Matrix * imports
- NBPSeq * imports
- NOISeq * imports
- ROTS * imports
- RUVSeq * imports
- Rmagic * imports
- Rtsne * imports
- S4Vectors * imports
- SAVER * imports
- SCnorm * imports
- Seurat * imports
- SingleCellExperiment * imports
- SummarizedExperiment * imports
- VGAM * imports
- ZIM * imports
- bayNorm * imports
- baySeq * imports
- broom * imports
- cobs * imports
- cowplot * imports
- data.table * imports
- doParallel * imports
- dplyr * imports
- edgeR * imports
- fastICA * imports
- fitdistrplus * imports
- foreach * imports
- future * imports
- ggplot2 * imports
- ggpubr * imports
- ggstance * imports
- grDevices * imports
- grid * imports
- iCOBRA * imports
- kernlab * imports
- limma * imports
- magrittr * imports
- matrixStats * imports
- methods * imports
- minpack.lm * imports
- moments * imports
- monocle * imports
- msir * imports
- nonnest2 * imports
- parallel * imports
- penalized * imports
- plotrix * imports
- plyr * imports
- pscl * imports
- qvalue * imports
- reshape2 * imports
- rlang * imports
- rsvd * imports
- scDD * imports
- scales * imports
- scater * imports
- scde * imports
- scone * imports
- scran * imports
- sctransform * imports
- stats * imports
- tibble * imports
- tidyr * imports
- truncnorm * imports
- utils * imports
- zinbwave * imports
- zingeR * imports
- zoo * imports
- BiocStyle * suggests
- MBESS * suggests
- knitr * suggests
- mvtnorm * suggests
- rmarkdown * suggests
- rmdformats * suggests