Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/Tim-TU/weibulltools

Statistical methods and visualizations often used in reliability engineering including the well-known weibull analysis and Monte Carlo simulations
https://github.com/Tim-TU/weibulltools

field-data-analysis interactive-visualizations plotly r reliability-analysis weibull-analysis weibulltools

Last synced: 3 months ago
JSON representation

Statistical methods and visualizations often used in reliability engineering including the well-known weibull analysis and Monte Carlo simulations

Awesome Lists containing this project

README

        

---
output: github_document
---

```{r, include = FALSE}
knitr::opts_chunk$set(
collapse = TRUE,
comment = "#>",
fig.path = "man/figures/README-",
out.width = "100%"
)
options(tibble.print_min = 5, tibble.print_max = 5)
```

# weibulltools

[![Lifecycle: stable](https://img.shields.io/badge/lifecycle-stable-brightgreen.svg)](https://lifecycle.r-lib.org/articles/stages.html#stable)
[![CRAN status](https://www.r-pkg.org/badges/version/weibulltools)](https://CRAN.R-project.org/package=weibulltools)
[![R-CMD-check](https://github.com/Tim-TU/weibulltools/workflows/R-CMD-check/badge.svg)](https://github.com/Tim-TU/weibulltools/actions)

## Overview

The {weibulltools} package focuses on statistical methods and visualizations that are often used in reliability engineering. It provides a compact and easily accessible set of methods and visualization tools that make the examination and adjustment as well as the analysis and interpretation of field data (and bench tests) as simple as possible.

Besides the well-known Weibull analysis, the package supports multiple lifetime distributions and also contains Monte Carlo methods for the correction and completion of imprecisely recorded or unknown lifetime characteristics.

Plots are created statically {[ggplot2](https://ggplot2.tidyverse.org/)} or interactively {[plotly](https://plotly.com/r/)} and can be customized with functions of the respective visualization package.

## Installation

The latest released version of {weibulltools} from [CRAN](https://CRAN.R-project.org/package=weibulltools) can be installed with:

```{r, eval = FALSE}
install.packages("weibulltools")
```

### Development version
Install the development version of {weibulltools} from [GitHub](https://github.com/Tim-TU/weibulltools/) to use new features or to get a bug fix.

```{r, eval = FALSE}
# install.packages("devtools")
devtools::install_github("Tim-TU/weibulltools")
```

## Usage

### Getting started
Create consistent reliability data with columns:

* `x` - lifetime characteristic
* `status` - binary data (0 for censored units and 1 for failed units)
* `id` (optional) - identifier for units

```{r, message = FALSE}
library(weibulltools)

rel_tbl <- reliability_data(data = shock, x = distance, status = status)
rel_tbl
```

### Probability estimation and visualization
Estimation of failure probabilities using different non-parametric methods:

```{r, probability_estimation}
prob_tbl <- estimate_cdf(x = rel_tbl, methods = c("mr", "kaplan", "johnson", "nelson"))
prob_tbl
```

Visualization of the obtained results in a distribution-specific probability plot:

```{r, probability_visualization}
prob_vis <- plot_prob(x = prob_tbl, distribution = "weibull",
title_main = "Weibull Probability Plot",
title_x = "Distance",
title_y = "Probability of Failure in %",
title_trace = "Methods",
plot_method = "gg")
prob_vis
```

### Model estimation and visualization
Parametric model estimation with respect to the used methods:

```{r, model_estimation}
rr_list <- rank_regression(x = prob_tbl, distribution = "weibull")
rr_list
```

Model visualization in an existing probability plot:

```{r, model_visualization}
mod_vis <- plot_mod(p_obj = prob_vis, x = rr_list, distribution = "weibull",
title_trace = "RR")
mod_vis
```

## Getting help

If you notice a bug or have suggestions for improvements, please submit an issue with a minimal reproducible example on [GitHub](https://github.com/Tim-TU/weibulltools/issues). For further questions, please contact [Tim-Gunnar Hensel](mailto:[email protected]).