Browse Source

ob-R.el: Add package name to read.table call

* lisp/ob-R.el: (ob-R-transfer-variable-table-with-header)
(ob-R-transfer-variable-table-without-header): Add package name to
call of R function `read.table'.

Thus, it now reads `utils::read.table'.  This clarifies the call as
well as avoids "could not find function" error in R with the devtools
package.  See
<https://github.com/hadley/devtools/issues/336#issuecomment-23517837>.
Rainer M. Krug 5 years ago
parent
commit
780db69cdf
1 changed files with 7 additions and 2 deletions
  1. 7 2
      lisp/ob-R.el

+ 7 - 2
lisp/ob-R.el

@@ -96,12 +96,15 @@ this variable.")
     (when (and session (string-match "^\\*\\(.+?\\)\\*$" session))
       (save-match-data (org-babel-R-initiate-session session nil)))))
 
+;; The usage of utils::read.table() ensures that the command
+;; read.table() can be found even in circumstances when the utils
+;; package is not in the search path from R.
 (defconst ob-R-transfer-variable-table-with-header
   "%s <- local({
      con <- textConnection(
        %S
      )
-     res <- read.table(
+     res <- utils::read.table(
        con,
        header    = %s,
        row.names = %s,
@@ -112,6 +115,7 @@ this variable.")
      res
    })"
   "R code used to transfer a table defined as a variable from org to R.
+
 This function is used when the table contains a header.")
 
 (defconst ob-R-transfer-variable-table-without-header
@@ -119,7 +123,7 @@ This function is used when the table contains a header.")
      con <- textConnection(
        %S
      )
-     res <- read.table(
+     res <- utils::read.table(
        con,
        header    = %s,
        row.names = %s,
@@ -132,6 +136,7 @@ This function is used when the table contains a header.")
      res
    })"
   "R code used to transfer a table defined as a variable from org to R.
+
 This function is used when the table does not contain a header.")
 
 (defun org-babel-expand-body:R (body params &optional graphics-file)