Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Rscript could not find function

Tags:

r

rscript

I need to run several scripts via the bash shell using Rscript and some functions I use require the function isGeneric. However, in this case the process end like that (for example):

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

This can be reproduced as follows

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

Result:

Error: could not find function "isGeneric"
Execution halted

However, if we open a R session and type the following, it works:

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

Would you know where the problem comes from and how to fix it?

like image 594
Ludovic Duvaux Avatar asked Oct 19 '13 16:10

Ludovic Duvaux


People also ask

What does could not find function mean in R?

Error in R – could not find function “%>%” – means that you don't have loaded or installed the R package that is using that.

Could not find function or function reference study?

The 'could not find function or function reference' error happens when we use the incorrect name for a built-in function. Those names in TradingView are quite precise: not only the name but also its capitalisation has to be correct.

What is the %>% function in R?

%>% is called the forward pipe operator in R. It provides a mechanism for chaining commands with a new forward-pipe operator, %>%. This operator will forward a value, or the result of an expression, into the next function call/expression.


1 Answers

According to help(Rscript), Rscript doesn't load the methods package by default, because it's time-consuming. So you either need to specify it on the command line:

Rscript --default-packages=methods file.R

Or library(methods) at the top of the file you're calling.

like image 193
Joshua Ulrich Avatar answered Sep 28 '22 10:09

Joshua Ulrich