Calling Custom functions from Python using rpy2
Question: Is there a way to call functions defined in a file say myfunc.r

    
    
    ---------------myfunc.r --------------
    myfunc = function(){
      return(c(1,2,3,4,5,6,7,8,9,10))
    }
    
    getname = function(){
      return("chart title")
    }
    
    ---- Python 
       How to call getname() here ?
    

Any help would be greatly appreciated ?


Answer: The are features in rpy2 that should help making this cleaner than dumping
objects into the global workspace.

    
    
    from rpy2.robjects.packages import STAP
    # if rpy2 < 2.6.1 do:
    # from rpy2.robjects.packages import SignatureTranslatedAnonymousPackage
    # STAP = SignatureTranslatedAnonymousPackage
    with open('myfunc.r', 'r') as f:
        string = f.read()
    myfunc = STAP(string, "myfunc")
    

The objects in the R file can now be accessed with `myfunc.myfunc` and
`myfunc.getname`.

Check the documention about [importing arbitrary R code as a
package](http://rpy2.readthedocs.org/en/version_2.7.x/robjects_rpackages.html#importing-
arbitrary-r-code-as-a-package) (older doc
[here](http://rpy.sourceforge.net/rpy2/doc-
dev/html/robjects_rpackages.html#importing-arbitrary-r-code-as-a-package)).

