MyNixOS website logo
Description

Estimation for Binary Emax Models with Missing Responses and Bias Reduction.

Provides estimation utilities for binary Emax dose-response models. Includes Expectation-Maximization based maximum likelihood estimation when the binary response is missing, as well as bias-reduced estimators including Jeffreys-penalized likelihood, Firth-score, and Cox-Snell corrections.The methodology is described in Zhang, Pradhan, and Zhao (2025) <doi:10.1177/09622802251403356> and Zhang, Pradhan, and Zhao (2026) <doi:10.1080/10543406.2026.2627387>.

Expectation-Maximization Based Emax Model Package

In this document, we illustrate the main features of the ememax R package through examples. Additional information on the statistical methodology and computational details are provided in the accompanying documentation and research articles.

Cite the package

The package applies methods introduced in the paper:

Zhang J, Pradhan V, Zhao Y. Robust Emax model fitting: Addressing nonignorable missing binary outcome in dose–response analysis. Statistical Methods in Medical Research. 2026;0(0). doi:10.1177/09622802251403356

Install

Open the R console and run the following command to install the package from source:

install.packages("devtools") # When you have not installed devtools package
devtools::install_github("Celaeno1017/ememax")

Tutorial

First, load the R package.

library(ememax)

To illustrate the main features of the R package ememax, let's first generate some data. We have built in a few functions directly into the R package for this purpose.

theta_true=matrix(c(qlogis(0.1),qlogis(0.8)-qlogis(0.1),log(7.5)),1,3) #true parmaeter of emax model
 colnames(theta_true)<- c('e_0','emax','led_50')
 theta_true <- as.data.frame(theta_true)
 dose_set <- c(0,7.5,22.5,75,225) #doseage definition
 n=355 #total number of sample size. The sample will be evenly allocated.
 alpha_true = c(0.5,1,-0.5,0,0) #mis 15 typical
 data <-sim_data(theta_true,n,dose_set,alpha_true)

To fit the emEmax model with Firth type correction, we use the fitEmaxEM_firth function which implements the proposed methodology.

res <- fitEmaxEM_firth(data=data$data,mis_form=as.formula(mis~y+dose) )

Key parameters include:

  • mis_form: The pre-defined logistic model for missingness. If y is included as a covariate, that means one considers the missingness is non-ignorable.

The result will contain the following values:

  • theta: the final fitted parameters of Emax model

  • alpha: the final fitted parameters of the logistic missing model

  • weight: the final fitted weight for each observation in EM

  • Q: the value of Q function for maximizationfor each iteration of EM

  • K: the total number of iterations of EM to converge

  • vcov_theta: the estimated variance covariance matrix of theta

  • vcov_alpha: the estimated variance covariance matrix of alpha.

Metadata

Version

0.1.0

License

Unknown

Platforms (80)

    Darwin
    FreeBSD
    Genode
    GHCJS
    Linux
    MMIXware
    NetBSD
    none
    OpenBSD
    Redox
    Solaris
    uefi
    WASI
    Windows
Show all
  • aarch64-darwin
  • aarch64-freebsd
  • aarch64-genode
  • aarch64-linux
  • aarch64-netbsd
  • aarch64-none
  • aarch64-uefi
  • aarch64-windows
  • aarch64_be-none
  • arc-linux
  • arm-none
  • armv5tel-linux
  • armv6l-linux
  • armv6l-netbsd
  • armv6l-none
  • armv7a-linux
  • armv7a-netbsd
  • armv7l-linux
  • armv7l-netbsd
  • avr-none
  • i686-cygwin
  • i686-freebsd
  • i686-genode
  • i686-linux
  • i686-netbsd
  • i686-none
  • i686-openbsd
  • i686-windows
  • javascript-ghcjs
  • loongarch64-linux
  • m68k-linux
  • m68k-netbsd
  • m68k-none
  • microblaze-linux
  • microblaze-none
  • microblazeel-linux
  • microblazeel-none
  • mips-linux
  • mips-none
  • mips64-linux
  • mips64-none
  • mips64el-linux
  • mipsel-linux
  • mipsel-netbsd
  • mmix-mmixware
  • msp430-none
  • or1k-none
  • powerpc-linux
  • powerpc-netbsd
  • powerpc-none
  • powerpc64-linux
  • powerpc64le-linux
  • powerpcle-none
  • riscv32-linux
  • riscv32-netbsd
  • riscv32-none
  • riscv64-linux
  • riscv64-netbsd
  • riscv64-none
  • rx-none
  • s390-linux
  • s390-none
  • s390x-linux
  • s390x-none
  • sh4-linux
  • vc4-none
  • wasm32-wasi
  • wasm64-wasi
  • x86_64-cygwin
  • x86_64-darwin
  • x86_64-freebsd
  • x86_64-genode
  • x86_64-linux
  • x86_64-netbsd
  • x86_64-none
  • x86_64-openbsd
  • x86_64-redox
  • x86_64-solaris
  • x86_64-uefi
  • x86_64-windows