Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/SchlossLab/mikropml
User-Friendly R Package for Supervised Machine Learning Pipelines
https://github.com/SchlossLab/mikropml
machine-learning r-package rstats
Last synced: 3 months ago
JSON representation
User-Friendly R Package for Supervised Machine Learning Pipelines
- Host: GitHub
- URL: https://github.com/SchlossLab/mikropml
- Owner: SchlossLab
- License: other
- Created: 2019-12-09T22:37:38.000Z (almost 5 years ago)
- Default Branch: main
- Last Pushed: 2023-08-22T01:31:02.000Z (about 1 year ago)
- Last Synced: 2024-08-04T04:50:47.047Z (3 months ago)
- Topics: machine-learning, r-package, rstats
- Language: R
- Homepage: http://www.schlosslab.org/mikropml
- Size: 143 MB
- Stars: 53
- Watchers: 9
- Forks: 16
- Open Issues: 12
-
Metadata Files:
- Readme: README.Rmd
- Contributing: .github/CONTRIBUTING.md
- License: LICENSE
- Code of conduct: .github/CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
---
output:
github_document
---```{r setup, include = FALSE}
knitr::opts_chunk$set(
collapse = TRUE,
comment = "#>",
fig.path = "man/figures/README-",
out.width = "100%"
)
```> meek-ROPE em el
User-Friendly R Package for Supervised Machine Learning Pipelines
[![check](https://github.com/SchlossLab/mikropml/workflows/check/badge.svg)](https://github.com/SchlossLab/mikropml/actions?query=workflow%3Acheck+branch%3Amain)
[![codecov](https://codecov.io/gh/SchlossLab/mikropml/branch/main/graph/badge.svg)](https://app.codecov.io/gh/SchlossLab/mikropml)
[![license](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/SchlossLab/mikropml/blob/main/LICENSE.md)
[![CRAN](https://img.shields.io/cran/v/mikropml?color=blue&label=CRAN&logo=R)](https://CRAN.R-project.org/package=mikropml)
[![Conda](https://img.shields.io/conda/vn/conda-forge/r-mikropml)](https://anaconda.org/conda-forge/r-mikropml)
[![DOI](https://joss.theoj.org/papers/10.21105/joss.03073/status.svg)](https://doi.org/10.21105/joss.03073)An interface to build machine learning models for classification and regression
problems. `mikropml` implements the ML pipeline described by [Topçuoğlu _et al._
(2020)](https://doi.org/doi:10.1128/mBio.00434-20) with reasonable default
options for data preprocessing, hyperparameter tuning, cross-validation,
testing, model evaluation, and interpretation steps. See the
[website](http://www.schlosslab.org/mikropml/) for more information,
documentation, and examples.## Installation
You can install the latest release from
[CRAN](https://cran.r-project.org/package=mikropml):```{r install_cran, eval = FALSE}
install.packages('mikropml')
```or the development version from
[GitHub](https://github.com/SchlossLab/mikRopML):```{r install_github, eval = FALSE}
# install.packages("devtools")
devtools::install_github("SchlossLab/mikropml")
```or install from a terminal using
[conda](https://docs.conda.io/projects/conda/en/latest/index.html)
or [mamba](https://mamba.readthedocs.io/en/latest/):```{bash conda, eval = FALSE}
mamba install -c conda-forge r-mikropml
```### Dependencies
```{r deps, echo = FALSE, message = FALSE, warning = FALSE}
library(dplyr)
description <- utils::packageDescription('mikropml',
fields = c('Imports', 'Suggests'))
deps <- lapply(names(description),
function (x) {
paste0('- ', x, ': ',
description[[x]] %>%
gsub("\n", " ", .))}
) %>%
unlist() %>%
paste(., collapse = '\n')
````r deps`
## Usage
Check out the [introductory
vignette](http://www.schlosslab.org/mikropml/articles/introduction.html) for a
quick start tutorial. For a more in-depth discussion, read [all the
vignettes](http://www.schlosslab.org/mikropml/articles/index.html) and/or take a
look at the [reference
documentation](http://www.schlosslab.org/mikropml/reference/index.html).You can watch the Riffomonas Project series of
[video tutorials](https://www.youtube.com/playlist?list=PLmNrK_nkqBpKpzb9-vI4V7SdXC-jXEcmg)
covering mikropml and other skills related to machine learning.We also provide a
[Snakemake workflow](https://github.com/SchlossLab/mikropml-snakemake-workflow)
for running `mikropml` locally or on an HPC.
We highly recommend running `mikropml` with Snakemake or another workflow
management system for reproducibility and scalability of ML analyses.## Help & Contributing
If you come across a bug,
[open an issue](https://github.com/SchlossLab/mikropml/issues)
and include a
[minimal reproducible example](https://www.tidyverse.org/help/).If you have questions, create a new post in
[Discussions](https://github.com/SchlossLab/mikropml/discussions).If you'd like to contribute, see our guidelines
[here](http://www.schlosslab.org/mikropml/CONTRIBUTING.html).## Code of Conduct
Please note that the mikropml project is released with a [Contributor Code of
Conduct](http://www.schlosslab.org/mikropml/CODE_OF_CONDUCT.html). By
contributing to this project, you agree to abide by its terms.## License
The mikropml package is licensed under
[the MIT license](https://github.com/SchlossLab/mikropml/blob/main/LICENSE.md).
Text and images included in this repository, including the mikropml logo,
are licensed under the [CC BY 4.0 license](https://creativecommons.org/licenses/by/4.0/).## Citation
To cite mikropml in publications, use:
> ```{r cite_text, echo = FALSE, results = 'asis'}
> cat(format(citation('mikropml'), style = 'html'))
> ```A BibTeX entry for LaTeX users is:
```{r cite_bibtex, echo = FALSE, comment = '', results = 'asis'}
cat("```\n", format(citation('mikropml'), style = 'bibtex'), "\n```")
```## Why the name?
The word "mikrop" (pronounced "meek-ROPE") is Turkish for "microbe". This
package was originally implemented as a machine learning pipeline for
microbiome-based classification problems (see [Topçuoğlu _et al._
2020](https://doi.org/10.1128/mBio.00434-20)). We realized that these methods
are applicable in many other fields too, but stuck with the name because we like
it!