tylermorganwall / skpr

Generates and evaluates D, I, A, Alias, E, T, G, and custom optimal designs. Supports generation and evaluation of mixture and split/split-split/N-split plot designs. Includes parametric and Monte Carlo power evaluation functions. Provides a framework to evaluate power using functions provided in other packages or written by the user.
https://tylermorganwall.github.io/skpr/
GNU General Public License v3.0
115 stars 15 forks source link

Feature request: add covariate balancing option to gen_design #82

Open wdkrnls opened 2 months ago

wdkrnls commented 2 months ago

I want to be able to construct designs where I start with a data frame of "covariate" (but potentially categorical) columns which I cannot control, but for which there is an unavoidable bias which I want to balance against. This feature is available in JMP, for instance.

=> https://www.jmp.com/support/help/en/17.0/index.shtml#page/jmp/covariates-with-hardtochange-levels.shtml#ww899481

Reading a bit, it seems these are called Marginally Restricted optimal designs and they were first studied in 1980.

=> https://conservancy.umn.edu/server/api/core/bitstreams/24ade0d5-c3af-438b-8a81-2ea34f5a1512/content

It is a very useful feature for a lot of unreplicated experiments with fixed equipment where you really can't perform any blocking. I imagine this could be done to some extent with the custom criterion option, but it would be nice to have a helper function factory towards that application.