Подтвердить что ты не робот

Rscript не смог найти функцию

Мне нужно запустить несколько скриптов через оболочку bash, используя Rscript, а некоторые функции, которые я использую, требуют функции isGeneric. Однако в этом случае процесс заканчивается так (например):

Error in .getLogLik() : could not 
find function "isGeneric"
Calls: main -> dredge -> .getLik -> .getLogLik
Execution halted

Это можно воспроизвести следующим образом

# in the bash shell
echo "isGeneric('apply')" > /tmp/test.R
Rscript /tmp/test.R

Результат:

Error: could not find function "isGeneric"
Execution halted

Однако, если мы откроем сеанс R и наберем следующее, он будет работать:

# in the R shell
isGeneric('apply')
[1] FALSE

Вы знаете, откуда возникла проблема и как ее исправить?

4b9b3361

Ответ 1

Согласно help(Rscript), Rscript не загружает пакет методов по умолчанию, потому что он занимает много времени. Поэтому вам нужно указать его в командной строке:

Rscript --default-packages=methods file.R

Или library(methods) в верхней части файла, который вы вызываете.