Piszę funkcję, która pobiera dwie zmienne i oddzielnie regresuje każdą z nich na zestawie kontrolek wyrażonych jako jednostronna formuła. Teraz używam następujące zrobić wzór na jednej z regresji, ale czuje się nieco włamał się:Używanie argumentów funkcji w update.formula
foo <- function(x, y, controls) {
cl <- match.call()
xn <- cl[["x"]]
xf <- as.formula(paste(xn, deparse(controls)))
}
wolałbym zrobić to za pomocą update.formula()
, ale oczywiście update.formula(controls, x ~ .)
i update.formula(controls, as.name(x) ~ .)
nie działają. Co powinienem robić?
Zastanawiam się, czy istnieje osiem lat później lepsza odpowiedź, oparta na kwotowaniach lub ogólnie na pakiecie rlang? – rcorty