Ответ 1
Теперь есть пакет RStata на CRAN, который соединяет R и Stata.
Можно ли вызвать функции Stata из R?
Теперь есть пакет RStata на CRAN, который соединяет R и Stata.
Не напрямую, т.е. нет пакета, о котором я знаю, который реализует мост.
Вы всегда можете вызывать внешние программы с помощью system()
, но это не является ни элегантным, ни эффективным. Тем не менее, вы можете подготовить данные в R, записать его, вызвать Stata и затем прочитать результаты; см. help(system)
.
Реальная проблема заключается в том, что Stata не имеет интерактивного интерпретатора, к которому вы можете передать аргументы.
Дирк прав; вы можете просто пойти и записать данные в общий формат (если размер большой, а скорость - проблема, фиксированная ширина - безопасна), но вы также можете просто использовать .dta на протяжении всего процесса, используя read.dta в R и изначально прочитав в Stata.
Кроме того, в R вы можете позвонить в систему(), вы можете передать файл do или строку, содержащую группу команд Stata.
Итак, как правило, попытка использования Stata для той или иной задачи может быть или не быть того стоит, особенно если эквивалент R близок.