Взятие в функцию кавычки и ее обнажение - PullRequest
0 голосов
/ 22 февраля 2019

У меня есть функция, которая вызывает функцию lm_robust из пакета estimatr в R. Я хочу иметь возможность указать переменную для кластеризации стандартных ошибок, но функция lm_robust допускает только голые (без кавычек) имена переменных в кластере lm_robustопция, в то время как моей функции нужно, чтобы входное значение было именем переменной в кавычках.

Как взять переменную, которая вводится в функцию (например, "cl"), и преобразовать ее в переменную без кавычек (например, cl)

1 Ответ

0 голосов
/ 22 февраля 2019

Использование as.name в do.call:

library(estimatr)
example(lm_robust)
## ... snip ...

clname <- "clusterID"
do.call("lm_robust", list(y ~ x + z, data = quote(dat), weights = quote(w),
   clusters = as.name(clname)))

подача:

              Estimate Std. Error    t value     Pr(>|t|)  CI Lower  CI Upper
(Intercept)  3.4261621  0.2009692 17.0481986 1.332761e-05  2.908643  3.943681
x           -0.6734741  0.1351184 -4.9843254 4.300590e-03 -1.022076 -0.324872
z            0.5850340  0.9436175  0.6199907 5.566933e-01 -1.689652  2.859720
                  DF
(Intercept) 4.970885
x           4.940162
z           6.396615
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...