This function runs the Gauss-Dantzig selector on the given columns. We have two options: either (a) GDS(m) on the m main effects, and (b) GDS(m+2fi) on the m main effects and the corresponding two-factor interactions. For a given delta, DS minimizes the L_1-norm (sum of absolute values) of beta subject to the constraint that max(|t(X)(y-X * beta)|) <= delta. The GDS is run for multiple values of delta. We use kmeans and BIC to select a best model.
Source
Cand`es, E. and Tao, T. (2007). The Dantzig selector: Statistical estimation when p is much larger than n. Annals of Statistics 35 (6), 2313--2351.
Dopico-Garc' ia, M.S., Valentao, P., Guerra, L., Andrade, P. B., and Seabra, R. M. (2007). Experimental design for extraction and quantification of phenolic compounds and organic acids in white "Vinho Verde" grapes Analytica Chimica Acta, 583(1): 15--22.
Hamada, M. and Wu, C. F. J. (1992). Analysis of designed experiments with complex aliasing. Journal of Quality Technology 24 (3), 130--137.
Hunter, G. B., Hodi, F. S. and Eagar, T. W. (1982). High cycle fatigue of weld repaired cast Ti-6AI-4V. Metallurgical Transactions A 13 (9), 1589--1594.
Phoa, F. K., Pan, Y. H. and Xu, H. (2009). Analysis of supersaturated designs via the Dantzig selector. Journal of Statistical Planning and Inference 139 (7), 2362--2372.
Singh, R. and Stufken, J. (2022). Factor selection in screening experiments by aggregation over random models, 1--31. tools:::Rd_expr_doi("10.48550/arXiv.2205.13497")
GDS_givencols(delta.n =10, design, Y, which.cols = c("main2fi"))
Arguments
delta.n: a positive integer suggesting the number of delta values to be tried. delta.n equally spaced values of delta will be used strictly between 0 and max(|t(X)y|). The default value is set to 10.
design: a nxm matrix of m two-level factors. The levels should be coded as +1 and -1.
Y: a vector of n responses.
which.cols: a string with either main or main2fi. Denotes whether the Gauss-Dantzig Selector should be run on the main effect columns (main), or on all main effects plus all 2 factor interaction columns (main2fi). The default value is main2fi.
Returns
A list returning the selected effects as well as the corresponding important factors.
Examples
data(dataHamadaWu)X = dataHamadaWu[,-8]Y = dataHamadaWu[,8]delta.n =10# GDS on main effects GDS_givencols(delta.n, design = X, Y=Y, which.cols ="main")# GDS on main effects and two-factor interactionsGDS_givencols(delta.n, design = X, Y=Y)data(dataCompoundExt)X = dataCompoundExt[,-9]Y = dataCompoundExt[,9]delta.n =10# GDS on main effectsGDS_givencols(delta.n, design = X, Y=Y, which.cols ="main")# GDS on main effects and two-factor interactionsGDS_givencols(delta.n, design = X, Y=Y, which.cols ="main2fi")