miso: Multivariable Isotonic Regression for Binary Data using...

View source: R/fun.R

misoR Documentation

Multivariable Isotonic Regression for Binary Data using Inverse Projective Bayes

Description

Estimates the underlying response probability for multivariate features using an inverse projective Bayes approach. The estimator is obtained by inverting the projective Bayes classifier across a grid of thresholds, yielding a monotone nonparametric estimate of the response probability that is nondecreasing in each feature. A Beta-Binomial conjugate model is used to compute posterior probabilities at each threshold.

Usage

miso(X, y, incr = 0.01)

Arguments

X

a numeric matrix of observed feature combinations, one row per observation, where repeated rows are expected. Each column represents a feature (e.g., a dose component or experimental factor) and each row represents the feature combination observed for one unit.

y

a binary numeric vector of length nrow(X) indicating the observed outcome for each observation (1 = event, 0 = no event).

incr

a numeric value in (0,1) specifying the increment between threshold grid points used to invert the classifier. Smaller values yield finer resolution at the cost of increased computation time. Defaults to 0.01.

Value

A list containing the following components:

alldoses

a numeric matrix of unique feature combinations observed in the training data

M

a numeric vector of observation counts at each feature combination

S

a numeric vector of event counts at each feature combination

thetahat

a numeric vector of estimated response probabilities at each unique feature combination, monotone nondecreasing with respect to the partial ordering of the features

nt

an integer giving the number of threshold grid points used, equal to round(1/incr) + 1

logH

a numeric vector of length nt giving the log posterior gain of the optimal classification at each threshold grid point

References

Cheung YK, Diaz KM. Monotone response surface of multi-factor condition: estimation and Bayes classifiers. J R Stat Soc Series B Stat Methodol. 2023 Apr;85(2):497-522. doi: 10.1093/jrsssb/qkad014. Epub 2023 Mar 22. PMID: 38464683; PMCID: PMC10919322.

Examples

A <- as.matrix(expand.grid(rep(list(0:1), 6)))
set.seed(2025)
X <- A[sample(nrow(A), size=500, replace=TRUE),]
y <- as.numeric(rowSums(X) >= 3)
miso(X, y)

McMiso documentation built on April 4, 2026, 1:07 a.m.

Related to miso in McMiso...