| add_draws | R Documentation |
Add draws from a matrix of draws (usually draws from a predictive distribution) to a data frame in tidy format. This is
a generic version of add_predicted_draws() that can be used with model types
that have their own prediction functions that are not yet supported by tidybayes.
add_draws(data, draws, value = ".value")
data |
Data frame to add draws to, with M rows. |
draws |
N by M matrix of draws, with M columns corresponding to the M rows in |
value |
The name of the output column; default |
Given a data frame with M rows and an N by M matrix of N draws, adds a .row, .draw, and .value
column (or another name if value is set) to data, and expands data into a long-format dataframe of draws.
add_epred_draws(df, m) is roughly equivalent to add_draws(df, posterior_epred(m, newdata = df)), except
that add_epred_draws standardizes argument names and values across packages and has additional features for some
model types (like handling ordinal responses and distributional parameters in brms).
add_predicted_draws(df, m) is roughly equivalent to add_draws(df, posterior_predict(m, newdata = df)), except
that add_predicted_draws standardizes argument names and values across packages.
A data frame (actually, a tibble) with a .row column (a
factor grouping rows from the input data), a .draw column (a unique index corresponding to each draw
from the distribution), and a column with its name specified by the value argument (default is .value)
containing the values of draws from draws. The data frame is grouped by all rows in data plus the .row column.
Matthew Kay
add_predicted_draws(), add_draws()
## Not run:
library(ggplot2)
library(dplyr)
library(brms)
library(modelr)
theme_set(theme_light())
m_mpg = brm(mpg ~ hp * cyl, data = mtcars,
# 1 chain / few iterations just so example runs quickly
# do not use in practice
chains = 1, iter = 500)
# plot posterior predictive intervals
mtcars %>%
group_by(cyl) %>%
data_grid(hp = seq_range(hp, n = 101)) %>%
# the line below is roughly equivalent to add_epred_draws(m_mpg), except
# that it does not standardize arguments across model types.
add_draws(posterior_epred(m_mpg, newdata = .)) %>%
ggplot(aes(x = hp, y = mpg, color = ordered(cyl))) +
stat_lineribbon(aes(y = .value), alpha = 0.25) +
geom_point(data = mtcars) +
scale_fill_brewer(palette = "Greys")
## End(Not run)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.