Plot bivariate predictor-response function on a new grid of points
Source:R/PredictorResponseFunctions.R
PredictorResponseBivarPair.Rd
Plot bivariate predictor-response function on a new grid of points
Usage
PredictorResponseBivarPair(
fit,
y = NULL,
Z = NULL,
X = NULL,
whichz1 = 1,
whichz2 = 2,
whichz3 = NULL,
method = "approx",
prob = 0.5,
q.fixed = 0.5,
sel = NULL,
ngrid = 50,
min.plot.dist = 0.5,
center = TRUE,
...
)
Arguments
- fit
An object containing the results returned by a the
kmbayes
function- y
a vector of outcome data of length
n
.- Z
an
n
-by-M
matrix of predictor variables to be included in theh
function. Each row represents an observation and each column represents an predictor.- X
an
n
-by-K
matrix of covariate data where each row represents an observation and each column represents a covariate. Should not contain an intercept column.- whichz1
vector identifying the first predictor that (column of
Z
) should be plotted- whichz2
vector identifying the second predictor that (column of
Z
) should be plotted- whichz3
vector identifying the third predictor that will be set to a pre-specified fixed quantile (determined by
prob
)- method
method for obtaining posterior summaries at a vector of new points. Options are "approx" and "exact"; defaults to "approx", which is faster particularly for large datasets; see details
- prob
pre-specified quantile to set the third predictor (determined by
whichz3
); defaults to 0.5 (50th percentile)- q.fixed
vector of quantiles at which to fix the remaining predictors in
Z
- sel
logical expression indicating samples to keep; defaults to keeping the second half of all samples
- ngrid
number of grid points to cover the range of each predictor (column in
Z
)- min.plot.dist
specifies a minimum distance that a new grid point needs to be from an observed data point in order to compute the prediction; points further than this will not be computed
- center
flag for whether to scale the exposure-response function to have mean zero
- ...
other arguments to pass on to the prediction function
Value
a data frame with value of the first predictor, the value of the second predictor, the posterior mean estimate, and the posterior standard deviation
Examples
## First generate dataset
set.seed(111)
dat <- SimData(n = 50, M = 4)
y <- dat$y
Z <- dat$Z
X <- dat$X
## Fit model with component-wise variable selection
## Using only 100 iterations to make example run quickly
## Typically should use a large number of iterations for inference
set.seed(111)
fitkm <- kmbayes(y = y, Z = Z, X = X, iter = 100, verbose = FALSE, varsel = TRUE)
#> Iteration: 10 (10% completed; 0.00472 secs elapsed)
#> Iteration: 20 (20% completed; 0.01 secs elapsed)
#> Iteration: 30 (30% completed; 0.01531 secs elapsed)
#> Iteration: 40 (40% completed; 0.02049 secs elapsed)
#> Iteration: 50 (50% completed; 0.02558 secs elapsed)
#> Iteration: 60 (60% completed; 0.03072 secs elapsed)
#> Iteration: 70 (70% completed; 0.0434 secs elapsed)
#> Iteration: 80 (80% completed; 0.04857 secs elapsed)
#> Iteration: 90 (90% completed; 0.05379 secs elapsed)
#> Iteration: 100 (100% completed; 0.0589 secs elapsed)
## Obtain predicted value on new grid of points
## Using only a 10-by-10 point grid to make example run quickly
pred.resp.bivar12 <- PredictorResponseBivarPair(fit = fitkm, min.plot.dist = 1, ngrid = 10)