| Title: | Causal Pies for Sufficient Causes |
|---|---|
| Description: | Causal pies are a way of visualizing the sufficient causes framework. Sufficient causes are what must occur before some event happens. The components of what causes the event may be in any or all sufficient causes, and those that are in all are called necessary causes. The sufficient cause framework was developed by Kenneth 'Rothman' as a way of thinking about causes of disease in epidemiology ('Rothman' (1976) <doi:10.1093/oxfordjournals.aje.a112335>). |
| Authors: | Malcolm Barrett [aut, cre, cph] (ORCID: <https://orcid.org/0000-0003-0299-5825>) |
| Maintainer: | Malcolm Barrett <[email protected]> |
| License: | MIT + file LICENSE |
| Version: | 0.1.0 |
| Built: | 2026-10-04 18:08:38 UTC |
| Source: | https://github.com/r-causal/causalpie |
Create sufficient causes
sc(...) causify(..., add_u = TRUE)sc(...) causify(..., add_u = TRUE)
... |
components of the cause |
add_u |
logical. Should component "U" be added to the sufficient cause?
Default is |
sc(): a named vector; causify(): a tibble with sufficient causes.
causify(sc(A = 1, B = 0), sc(A = 1, E = 1, C = 0)) causify(sc(F = 1, Q = 0), sc(A = 1), add_u = FALSE)causify(sc(A = 1, B = 0), sc(A = 1, E = 1, C = 0)) causify(sc(F = 1, Q = 0), sc(A = 1), add_u = FALSE)
components() identifies the unique components across all sufficient causes.
necessary_causes() identifies the components that appear in all sufficient
causes. sufficient_causes() identifies all the components of a sufficient
cause.
components(causes) necessary_causes(causes) sufficient_causes(causes)components(causes) necessary_causes(causes) sufficient_causes(causes)
causes |
a data frame, the result of |
a character vector
causes <- causify(sc(A = 1, B = 0), sc(A = 1, E = 1, C = 0)) components(causes) necessary_causes(causes) sufficient_causes(causes)causes <- causify(sc(A = 1, B = 0), sc(A = 1, E = 1, C = 0)) components(causes) necessary_causes(causes) sufficient_causes(causes)
Causal pies are visual representations of sufficient causes. causal_pie()
plots all sufficient causes and highlights the unique components.
causal_pie_necessary() does the same but highlights necessary causes (those
components that appear in every sufficient cause).
causal_pie(causes, text_col = "black") causal_pie_necessary(causes, text_col = "black")causal_pie(causes, text_col = "black") causal_pie_necessary(causes, text_col = "black")
causes |
a data frame, the result of |
text_col |
color of the text. Default is "black". |
a ggplot
causes <- causify(sc(A = 1, B = 0), sc(A = 1, E = 1, C = 0)) causes |> causal_pie() + theme_causal_pie() causes |> causal_pie_necessary() + theme_causal_pie_grid()causes <- causify(sc(A = 1, B = 0), sc(A = 1, E = 1, C = 0)) causes |> causal_pie() + theme_causal_pie() causes |> causal_pie_necessary() + theme_causal_pie_grid()
Minimalist themes for causal pies
theme_causal_pie(base_size = 12, base_family = "", ...) theme_causal_pie_grid(base_size = 12, base_family = "", ...)theme_causal_pie(base_size = 12, base_family = "", ...) theme_causal_pie_grid(base_size = 12, base_family = "", ...)
base_size |
base font size, given in pts. |
base_family |
base font family |
... |
additional arguments passed to |
A ggplot2::theme object
causify(sc(A = 1, B = 0), sc(A = 1, E = 1, C = 0)) |> causal_pie_necessary() + theme_causal_pie()causify(sc(A = 1, B = 0), sc(A = 1, E = 1, C = 0)) |> causal_pie_necessary() + theme_causal_pie()