Передать вывод из system2 в объект R

Я пытаюсь получить вывод из двоичного файла с аргументами, вызываемыми system2, в объект R. Но я терплю неудачу. Я гуглил несколько альтернатив, таких как system, exec_internal, но не могу понять это правильно. Вот игрушечный пример, использующий функцию Linux "factor", которая должна факторизовать 5555.

test_001 <- system2("factor", args=c("5555"))

и вывод, показанный на мониторе

5555: 5 11 101

Тем не менее, я хотел бы получить этот результат в объект "test_001". Но если я наберу

test_001

результат только

[1] 0

Я действительно не понимаю, как получить вывод из system2 в объект R. Спасибо за любую помощь!

1 ответ

Вы должны изменить место, куда отправляется вывод, указав stdout (и, возможно, etderr) вариант. Как подсказывает system2, выводом по умолчанию является консоль R

куда должен быть отправлен вывод в 'stdout' или 'stderr'. Возможные значения: "", для консоли R (по умолчанию), NULL или FALSE (отменить вывод), TRUE (захватить вывод в символьном векторе) или символьную строку с именем файла.

output = TRUE отправить вывод как символьный векторный объект в R. Так что для вашего случая вы можете:

test_001 <- system2("factor", args=c("5555"), stdout = TRUE)
Другие вопросы по тегам