From mboxrd@z Thu Jan 1 00:00:00 1970 From: Manish Subject: Re: org-babel-R and windows ? Date: Wed, 13 Jan 2010 09:46:45 +0530 Message-ID: References: <878wc3kyli.fsf@stats.ox.ac.uk> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Return-path: Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1NUufU-0001xH-UM for emacs-orgmode@gnu.org; Tue, 12 Jan 2010 23:17:17 -0500 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1NUufQ-0001vw-HY for emacs-orgmode@gnu.org; Tue, 12 Jan 2010 23:17:16 -0500 Received: from [199.232.76.173] (port=33361 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NUufQ-0001vk-EY for emacs-orgmode@gnu.org; Tue, 12 Jan 2010 23:17:12 -0500 Received: from mx20.gnu.org ([199.232.41.8]:39002) by monty-python.gnu.org with esmtps (TLS-1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1NUufP-0004Yv-VB for emacs-orgmode@gnu.org; Tue, 12 Jan 2010 23:17:12 -0500 Received: from mail-iw0-f187.google.com ([209.85.223.187]) by mx20.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1NUufO-0004ZL-EF for emacs-orgmode@gnu.org; Tue, 12 Jan 2010 23:17:10 -0500 Received: by iwn17 with SMTP id 17so15896590iwn.25 for ; Tue, 12 Jan 2010 20:17:05 -0800 (PST) In-Reply-To: <878wc3kyli.fsf@stats.ox.ac.uk> List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: Dan Davison Cc: emacs-orgmode@gnu.org, "d.tchin" On Tue, Jan 12, 2010 at 11:13 PM, Dan Davison wrote: [snip: snipped (43 lines)] > > The org-babel default is to invoke R as an external shell command, and I > think this is what is causing the problem. It requires that the emacs > function shell-command can use the string "R" to invoke an R process, > i.e. the R installation and the shell path must be such that this is the > case. > > Seeing as you have ESS installed, how about using session-based > evaluation? This means that org-babel uses an interactive R session > running under the control of ESS. In general it is a better way to work > with R in org-babel. It is described in the section "Session-based > Evaluation" in > > http://orgmode.org/worg/org-contrib/babel/intro.php > > and also in the reference manual: > > http://orgmode.org/worg/org-contrib/babel/reference.php#header-argument-session > > basically you just set the :session header argument, e.g. > > #+srcname:trial > #+begin_src R :session org-babel-R-session > c(4,5,6,7,8,9) > #+end_src > Thanks for the advice regarding using sessions. It works now. But I have something interesting to report. With following test org file, evaluation of R block fails to produce desired results. If the lines with "require" are removed, the evaluation works fine. R session buffer contents are pasted below as well just in case they are of any help. --8<---------------cut here---------------start------------->8--- * Test Here's how to set it up. (require 'org_babel_init) (require 'org_babel_R) (org_babel_load_library_of_babel) #+srcname: strings #+begin_src R :colnames t :session org-babel-R-strings t(sort(table(tolower(scan("~/personal/test-org-babel.org", what="", na.strings="|"))), decreasing=TRUE)[1:10]) #+end_src #+results: strings --8<---------------cut here---------------end--------------->8--- --8<---------------cut here---------------start------------->8--- R version 2.10.0 (2009-10-26) Copyright (C) 2009 The R Foundation for Statistical Computing ISBN 3-900051-07-0 R is free software and comes with ABSOLUTELY NO WARRANTY. You are welcome to redistribute it under certain conditions. Type 'license()' or 'licence()' for distribution details. R is a collaborative project with many contributors. Type 'contributors()' for more information and 'citation()' on how to cite R or R packages in publications. Type 'demo()' for some demos, 'help()' for on-line help, or 'help.start()' for an HTML browser interface to help. Type 'q()' to quit R. > options(chmhelp = FALSE) > options(STERM='iESS', editor='gnuclient.exe') > t(sort(table(tolower(scan("~/personal/test-org-babel.org", what="", na.strings="|"))), decreasing=TRUE)[1:10]) write.table(.Last.value, file="d:/home/zms/tmp/org-babel-R1752nPK", sep="\t", na="nil",row.names=FALSE, col.names=TRUE, quote=FALSE) 'org_babel_R_eoe' > t(sort(table(tolower(scan("~/personal/test-org-babel.org", what="", na.strings="|"))), decreasing=TRUE)[1:10]) Read 27 items strings #+begin_src #+end_src #+results: #+srcname: [1,] 2 1 1 1 1 (org_babel_load_library_of_babel) (require * :colnames :session [1,] 1 1 1 1 1 > write.table(.Last.value, file="d:/home/zms/tmp/org-babel-R1752nPK", sep="\t", na="nil",row.names=FALSE, col.names=TRUE, quote=FALSE) > 'org_babel_R_eoe' [1] "org_babel_R_eoe" > --8<---------------cut here---------------end--------------->8--- Thank you -- Manish