From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Charles C. Berry" Subject: Re: R code not producing expected results Date: Thu, 12 Aug 2010 23:57:20 -0700 Message-ID: References: Mime-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed Return-path: Received: from [140.186.70.92] (port=43621 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1OjoEK-0003HE-PA for emacs-orgmode@gnu.org; Fri, 13 Aug 2010 02:59:07 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1OjoEA-0007jY-PJ for emacs-orgmode@gnu.org; Fri, 13 Aug 2010 02:58:56 -0400 Received: from tajo.ucsd.edu ([137.110.122.165]:35794) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OjoEA-0007Sl-KG for emacs-orgmode@gnu.org; Fri, 13 Aug 2010 02:58:54 -0400 In-Reply-To: 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: "Blanchette, Marco" Cc: "emacs-orgmode@gnu.org" On Thu, 12 Aug 2010, Blanchette, Marco wrote: > Dear all, > > Sorry if this is something totally obvious but I am learning to use org-mode for my everyday work with R. I just installed the latest stable release of org-mode (v7.01g) on top of GNU Emacs 23.1.50.1 (x86_64-apple-darwin10.2.0, NS apple-appkit-1038.25). I also installed the CRAN ascii package v0.7 on top of R v2.11.1. I am currently working on a MacBook pro with Snow Leopard 10.6.4 > > Early on today, while reading the org-babel intro, I was able to run the following example but somehow, later tonight, it started to break and I spent the last few hours scratching my head to understand what change and why it now suddenly break. Your help will be greatly appreciated as I am discovering that org-mode in collaboration with org-babel have great potential to help us create more readable report of our daily analysis, as long as I can get through these early hurdles. The code you say is "straight from ...org-babel-doc-R.php" is not quite. Note all the header args: #+begin_src R :results output code :session ascii Also note that ascii() does not return an object of class "matrix" or "data.frame". Try str(ascii( < all the rest > )). With :results value (the default) you will get a different outcome as you saw below. 'value' tries to be smart about what it does with .Last.value, but "ascii" objects are a bit too tricky for it. 'output' on the other hand is pretty simple on the elisp side and relies on R's print() to get the dispatch for the print method right. If you want to use ':results value' you will need to form a data.frame from ascii() yourself, rather than rely on as.data.frame to find a method to do the conversion. Or you will need to write a method for as.data.frame.ascii. HTH, Chuck > > Here is the org buffer that now breaks: > > * Two examples of R code that worked when I started the tutorial but suddenly started to fail... > > ** some R code that should generate a nice table > #+BEGIN_SRC R > library(ascii) > options(asciiType="org") > > d <- as.data.frame(replicate(4,rnorm(100))) > > ascii(cor(d),include.rownames=T, include.colnames=T,header=T) > #+END_SRC > > ** Some code straight from [[http://orgmode.org/worg/org-contrib/babel/languages/org-babel-doc-R.php][org-babel]] > #+BEGIN_SRC R > library(ascii) > options(asciiType="org") > ascii(summary(table(1:4, 1:4))) > #+END_SRC > > > With the following error recover from the *Org-Babel Error* buffer > > Loading required package: proto > Error in as.data.frame.default(x[[i]], optional = TRUE) : > cannot coerce class 'c("ascii", "proto", "environment")' into a data.frame > Calls: write.table ... data.frame -> as.data.frame -> as.data.frame.default > Execution halted > > Thanks for the helps. > -- > Marco Blanchette, Ph.D. > Assistant Investigator > Stowers Institute for Medical Research > 1000 East 50th St. > > Kansas City, MO 64110 > > Tel: 816-926-4071 > Cell: 816-726-8419 > Fax: 816-926-2018 > > _______________________________________________ > Emacs-orgmode mailing list > Please use `Reply All' to send replies to the list. > Emacs-orgmode@gnu.org > http://lists.gnu.org/mailman/listinfo/emacs-orgmode > Charles C. Berry (858) 534-2098 Dept of Family/Preventive Medicine E mailto:cberry@tajo.ucsd.edu UC San Diego http://famprevmed.ucsd.edu/faculty/cberry/ La Jolla, San Diego 92093-0901