# parameters: a powerful and lightweight alternative to broom to describe your models’ coefficients

**R on easystats**, and kindly contributed to R-bloggers]. (You can report issue about the content on this page here)

Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.

Okay, *“an alternative to broom”* might be a bit of an **overstatement** *(at least for now…)*

But the ** parameters** package, finally on CRAN, already has some cool features!

## parameters

We have recently decided to collaborate around the **easystats project**, a set of packages designed to make your life *easier*. This project encompasses several packages, devoted for instance to model internal access, Bayesian analysis, as well as indices of model performance and quality.

** parameters'** primary goal is to provide utilities for processing the parameters of various statistical models. Beyond computing

**,**

*p*-values**CIs**,

**Bayesian indices**and other measures for a wide variety of models, this package implements features like

**standardization**or

**bootstrapping**of parameters and models,

**feature reduction**(feature extraction and variable selection) as well as conversion between indices of

**effect size**.

The main function of the package is `model_parameters()`

, which allows you to extract the parameters and their characteristics from various models in a consistent way. It can be considered as a lightweight alternative to `broom::tidy()`

, with some notable differences:

- The names of the returned dataframe are
**specific**to their content. For instance, the column containing the statistic is named following the statistic name, i.e.,*t*,*z*, etc., instead of a generic name such as*statistic*. - It is able to compute or extract indices not available by default, such as
,*p*values**CIs**, etc. - It includes
**feature engineering**capabilities, including**bootstrapping**and**standardization**of parameters.

## Examples

### ANOVAs

```
df <- iris
df$Sepal.Big <- ifelse(df$Sepal.Width >= 3, "Yes", "No")
model <- aov(Sepal.Length ~ Sepal.Big, data = df)
model_parameters(model, eta_squared = "partial")
```

```
## Parameter | Sum_Squares | df | Mean_Square | F | p | Eta_Sq (partial)
## ----------------------------------------------------------------------------
## Sepal.Big | 1.10 | 1 | 1.10 | 1.61 | > .1 | 0.01
## Residuals | 101.07 | 148 | 0.68 | | |
```

### Mixed models

```
library(lme4)
model <- lmer(Sepal.Width ~ Petal.Length + Petal.Width + (1|Species), data = iris)
model_parameters(model, standardize = "refit")
```

```
## Parameter | Coefficient | SE | 95% CI | t | p | Coefficient (std.)
## --------------------------------------------------------------------------------------
## (Intercept) | 1.78 | 0.69 | [-1.71, 5.26] | 2.56 | < .05 | 0.00
## Petal.Length | 0.15 | 0.06 | [-0.14, 0.43] | 2.26 | < .05 | 0.59
## Petal.Width | 0.61 | 0.14 | [-0.59, 1.81] | 4.49 | < .001 | 1.07
```

And you can also **directly plot the parameters** with the see package!

```
library(see)
lmer(Sepal.Width ~ Petal.Length * Petal.Width + (1|Species), data = iris) %>%
model_parameters() %>%
plot()
```

### Bayesian models

```
library(rstanarm)
model <- stan_glm(mpg ~ wt + cyl, data = mtcars)
model_parameters(model)
```

```
## Parameter | Median | 89% CI | pd | % in ROPE | ESS | Rhat | Prior
## -----------------------------------------------------------------------------------------------
## (Intercept) | 39.68 | [36.74, 42.35] | 100% | 0% | 4836 | 0.999 | Normal (0 +- 60.27)
## wt | -3.19 | [-4.41, -2.03] | 99.98% | 0.05% | 2276 | 1.000 | Normal (0 +- 15.40)
## cyl | -1.50 | [-2.21, -0.88] | 100% | 1.75% | 2300 | 1.000 | Normal (0 +- 8.44)
```

**Check out****more examples and documentation here!**

## Get Involved

There is definitely room for improvement, and some new exciting features are already planned. Feel free to let us know how we could further improve this package!

Note that *easystats* is a new project in active development, looking for contributors and supporters. Thus, do not hesitate to contact us if **you want to get involved 🙂**

**Check out our other blog posts**!*here*

**leave a comment**for the author, please follow the link and comment on their blog:

**R on easystats**.

R-bloggers.com offers

**daily e-mail updates**about R news and tutorials about learning R and many other topics. Click here if you're looking to post or find an R/data-science job.

Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.