Как преобразовать напечатанную таблицу во фрейм данных - PullRequest
0 голосов
/ 27 апреля 2020

В R некоторые функции выводят данные, печатая их в консоли, вместо создания объектов. Это неудобно для дальнейшего анализа вывода или перемещения его в другое приложение. Я сталкивался с этим в функции переклассификации в «PredictABEL».

Например, в следующем примере печатаются 3 большие таблицы, которые я, к сожалению, не могу присвоить объекту.

reclassification(data = data, cOutcome = 1, predrisk1 = predictor1, predrisk2 = predictor2, cutoff = seq(0,1,0.1))

Я надеваю Не думаю, что детали важны, но в целях обеспечения воспроизводимости этого примера ниже приведены переменные, используемые в приведенных выше аргументах

data = data.frame(outcome = c(0,0,0,0,1,1,1,1), predictor1 = c(0,1,2,0,1,2,0,0.5), predictor2 = c(0.5,1.5,2,0,0.5,2,0,0.5))
mod1 <- glm(outcome ~ predictor1, data = data, family = binomial(link="logit"))
mod2 <- glm(outcome ~ predictor2, data = data, family = binomial(link="logit"))
predictor1 <- predict(mod1, data, type = "response")
predictor2 <- predict(mod2, data, type = "response")

Кто-нибудь может объяснить, как я могу назначить свой вывод объекту? желательно в аккуратном табличном формате, который поддается дальнейшему анализу?

Спасибо!

1 Ответ

2 голосов
/ 27 апреля 2020

Вы можете использовать capture.output (), который будет захватывать результаты как символьный вектор. Затем вы можете извлечь таблицы из него.

out<- capture.output(reclassification(data = data, cOutcome = 1, predrisk1 = predictor1, predrisk2 = predictor2, cutoff = seq(0,1,0.1)))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...