# MarginalMediation v0.7.0

Monthly downloads

## Marginal Mediation

Provides the ability to perform "Marginal Mediation"--mediation
wherein the indirect and direct effects are in terms of the average marginal effects
(Bartus, 2005, <https://EconPapers.repec.org/RePEc:tsj:stataj:v:5:y:2005:i:3:p:309-329>).
The style of the average marginal effects stems from Thomas Leeper's work on the "margins" package.
This framework allows the use of categorical mediators and outcomes with little change in interpretation
from the continuous mediators/outcomes. See <doi:10.13140/RG.2.2.18465.92001> for more details
on the method.

## Readme

# MarginalMediation: 0.7.0

The `MarginalMediation`

package provides the ability to perform
**marginal mediation analysis**. It provides a useful statistical
framework from which to interpret the coefficients in a mediation
analysis, especially when the mediator(s) and/or outcome is binary or a
count (other types of outcomes will be added).

You can install it via:

```
install.packages("MarginalMediation")
```

or

```
install.packages("remotes")
remotes::install_github("tysonstanley/MarginalMediation")
```

The main function is `mma()`

:

```
mma(...,
ind_effects = c("apath-bpath"))
```

where `...`

consists of 2 or more model objects. The first is the `b`

and `c'`

path model, while the others are the `a`

path models.

The `ind_effects`

is a vector of requested mediated paths. These
estimates are in terms of the average marginal effects using the `a x b`

method of estimating indirect paths. Any number of these can be
included, although it is limited to the number of variables available in
the models.

### A Quick Example

Below is an example, where the theoretical backing of such a model is not very stable, but it is useful to show how to use the function and the output.

```
## Data for the example
library(furniture)
#> ── furniture 1.9.0 ─────────────────────────────────────────────────────────────── learn more at tysonbarrett.com ──
#> ✔ furniture attached
#> ✔ No potential conflicts found
data(nhanes_2010)
```

```
## The MarginalMediation package
library(MarginalMediation)
```

```
#> Loading MarginalMediation
#> ── MarginalMediation 0.7.0 ─────────────────────────────────────────────────────── learn more at tysonbarrett.com ──
#> ✔ MarginalMediation attached
#> ✔ No potential conflicts found
```

```
pathbc <- glm(marijuana ~ home_meals + gender + age + asthma,
data = nhanes_2010,
family = "binomial")
patha <- glm(home_meals ~ gender + age + asthma,
data = nhanes_2010,
family = "gaussian")
mma(pathbc, patha,
ind_effects = c("genderFemale-home_meals",
"age-home_meals",
"asthmaNo-home_meals"),
boot = 500)
#>
#> calculating a paths... b and c paths... Done.
#> ┌───────────────────────────────┐
#> │ Marginal Mediation Analysis │
#> └───────────────────────────────┘
#> A marginal mediation model with:
#> 1 mediators
#> 3 indirect effects
#> 3 direct effects
#> 500 bootstrapped samples
#> 95% confidence interval
#> n = 1417
#>
#> Formulas:
#> ◌ marijuana ~ home_meals + gender + age + asthma
#> ◌ home_meals ~ gender + age + asthma
#>
#> Regression Models:
#>
#> marijuana ~
#> Est SE Est/SE P-Value
#> (Intercept) -0.39400 0.38028 -1.03608 0.30017
#> home_meals -0.04062 0.01363 -2.98051 0.00288
#> genderFemale 0.43161 0.11723 3.68169 0.00023
#> age 0.00276 0.01470 0.18754 0.85123
#> asthmaNo -0.00717 0.15004 -0.04778 0.96189
#>
#> home_meals ~
#> Est SE Est/SE P-Value
#> (Intercept) 6.56883 0.76462 8.59100 0.00000
#> genderFemale -1.34831 0.23910 -5.63913 0.00000
#> age -0.05689 0.03017 -1.88565 0.05955
#> asthmaNo -0.00428 0.31293 -0.01368 0.98909
#>
#> Unstandardized Mediated Effects:
#>
#> Indirect Effects:
#>
#> marijuana ~
#> Indirect Lower Upper
#> genderFemale => home_meals 0.01312 0.00429 0.02562
#> age => home_meals 0.00055 0.00003 0.00139
#> asthmaNo => home_meals 0.00004 -0.00639 0.00672
#>
#> Direct Effects:
#>
#> marijuana ~
#> Direct Lower Upper
#> genderFemale 0.10430 0.04813 0.15967
#> age 0.00066 -0.00603 0.00848
#> asthmaNo -0.00172 -0.06947 0.07061
```

The print method provides:

- the individual regression results,
- the
`a`

paths, - the
`b`

paths, - the indirect effect with the confidence interval, and
- the direct effect with the confidence interval.

The regressions are in their original (non-AME) units while the indirect and direct effects are in the AME units—the units of the outcome—in this case, risk of using marijuana.

### Conclusions

Let me know if you find any bugs or want to discuss the method (t.barrett@aggiemail.usu.edu).

## Functions in MarginalMediation

Name | Description | |

mma_std_ind_effects | Standardized Indirect Effects Extraction for MMA | |

perc_med | Percent Mediation | |

mma_dir_effects | Direct Effects Extraction for MMA | |

mma_formulas | Formula Extraction for MMA | |

mma_ind_effects | Indirect Effects Extraction for MMA | |

mma | Marginal Mediation | |

mma_std_dir_effects | Standardized Direct Effects Extraction for MMA | |

mma_check | Uncorrelated Residual Assumption Check | |

%>% | re-export magrittr pipe operator | |

amed | Average Marginal Effects | |

frames | Average Marginal Effects | |

No Results! |

## Vignettes of MarginalMediation

Name | ||

MarginalMediation_vignette.Rmd | ||

No Results! |

## Last month downloads

## Details

VignetteBuilder | knitr |

Encoding | UTF-8 |

License | GPL-2 |

LazyData | true |

RoxygenNote | 6.1.1 |

NeedsCompilation | no |

Packaged | 2019-03-04 07:10:59 UTC; tysonbarrett |

Repository | CRAN |

Date/Publication | 2019-03-04 10:50:02 UTC |

imports | betareg , boot , cli , crayon , furniture , magrittr , purrr , rstudioapi , stats , stringr , tibble |

suggests | knitr , margins , rmarkdown , testthat |

Contributors | Thomas Leeper, Brian Ripley, Angelo Canty |

#### Include our badge in your README

```
[![Rdoc](http://www.rdocumentation.org/badges/version/MarginalMediation)](http://www.rdocumentation.org/packages/MarginalMediation)
```