[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [O] org tables into R?
From: |
Rainer M Krug |
Subject: |
Re: [O] org tables into R? |
Date: |
Tue, 06 Jan 2015 12:02:48 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.4 (darwin) |
Andreas Leha <address@hidden> writes:
> Hi Aaron and Nicolas,
Sorry for coming so late to this topic - I should try to figure out what
is causing the problem as I am the one responsible for this code...
>
> Thanks for partly fixing this issue. Unfortunately, when working with
> source block interactively the issue persists for me. If in the same
> sample file I view the source block via 'C-c C-v v' and step through the
> generated code line-by-line, the table is again not split into columns.
>
> This time I immediately tried with 'emacs -Q' and I can reproduce the
> issue.
>
> Here is the ecm again:
>
> * test
> #+NAME: data
> | A | B | C |
> |-----+----+----|
> | 115 | 76 | 60 |
> | 124 | 78 | 55 |
> | 118 | 73 | 65 |
> | 114 | 75 | 61 |
> | 108 | 74 | 82 |
>
> and pass it into R like this, then evaluation (C-c C-c) works, but
> stepping through the code generated for viewing (C-c C-v v) does not:
>
> #+BEGIN_SRC R :results output :exports both :session :var data.table=data
> names(data.table)
> head(data.table)
> #+END_SRC
>
> #+results:
> : [1] "A" "B" "C"
> : A B C
> : 1 115 76 60
> : 2 124 78 55
> : 3 118 73 65
> : 4 114 75 61
> : 5 108 74 82
>
> #+begin_src emacs-lisp
> (concat
> (replace-regexp-in-string " on .*" "" (emacs-version))
> "\n"
> (replace-regexp-in-string " @.*" ")" (org-version nil t))
> "\n"
> (replace-regexp-in-string "].*" "]" (ess-version)))
> #+end_src
>
> #+results:
> : GNU Emacs 24.4.50.1 (x86_64-apple-darwin13.3.0, NS appkit-1265.21 Version
> 10.9.4 (Build 13E28))
> : of 2014-09-02
> : Org-mode version 8.3beta (release_8.3beta-717-ga8096c)
> : ess-version: 14.05 [git: 4283f1304a54502c42707b6a4ba347703f0992dd]
>
,----
| #+RESULTS:
| : GNU Emacs 24.4.1 (x86_64-apple-darwin14.0.0, Carbon Version 157 AppKit
1343.16)
| : of 2014-11-24
| : Org-mode version 8.3beta (release_8.3beta-695-g390015)
| : ess-version: 14.09 [svn: 6041 (2014-09-13)]
`----
I get the same in the preview, but it works for me. I do not use -q.
,----
| > data.table <- local({
| + con <- textConnection(
| + "\"A\" \"B\" \"C\"
| + \"115\" \"76\" \"60\"
| + \"124\" \"78\" \"55\"
| + \"118\" \"73\" \"65\"
| + \"114\" \"75\" \"61\"
| + \"108\" \"74\" \"82\""
| + )
| + res <- utils::read.table(
| + con,
| + header = TRUE,
| + row.names = NULL,
| + sep = "\t",
| + as.is = TRUE
| + )
| + close(con)
| + res
| + })
| > names(data.table)
| [1] "A" "B" "C"
| > head(data.table)
| A B C
| 1 115 76 60
| 2 124 78 55
| 3 118 73 65
| 4 114 75 61
| 5 108 74 82
| >
`----
>
> Here is what I see in the org babel preview:
>
This might be due to temail, but you don't have tabs (\t) between your
entries below - could you verify if this is the case? If yes, this might
be a locale issue (would be strange)?
> data.table <- local({
> con <- textConnection(
> "\"A\" \"B\" \"C\"
> \"115\" \"76\" \"60\"
> \"124\" \"78\" \"55\"
> \"118\" \"73\" \"65\"
> \"114\" \"75\" \"61\"
> \"108\" \"74\" \"82\""
> )
> res <- utils::read.table(
> con,
> header = TRUE,
> row.names = NULL,
> sep = "\t",
> as.is = TRUE
> )
> close(con)
> res
> })
> names(data.table)
> head(data.table)
One solution would be to insert (instead of the tab character) "\t" to
separate the fields?
You could try and modify the ob-R-transfer-variable-table-with-header -
From the help:
,----
| ob-R-transfer-variable-table-with-header is a variable defined in `ob-R.el'.
| Its value is
| "%s <- local({\n con <- textConnection(\n %S\n )\n res <-
utils::read.table(\n con,\n header = %s,\n row.names =
%s,\n sep = \"\\t\",\n as.is = TRUE\n )\n
close(con)\n res\n })"
|
| This variable may be risky if used as a file-local variable.
|
| Documentation:
| 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.
`----
This is passed to the (format) function and one might be able to change
something there.
Cheers,
Rainer
>
>
> And finally, here is my R session, when I step through the code:
>
>
> R version 3.1.2 (2014-10-31) -- "Pumpkin Helmet"
> Copyright (C) 2014 The R Foundation for Statistical Computing
> Platform: x86_64-apple-darwin10.8.0 (64-bit)
>
> 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.
>
> Natural language support but running in an English locale
>
> 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(STERM='iESS', str.dendrogram.last="'", editor='emacsclient',
>> > show.error.locations=TRUE)
>> data.table <- local({
> + con <- textConnection(
> + "\"A\" \"B\" \"C\"
> + \"115\" \"76\" \"60\"
> + \"124\" \"78\" \"55\"
> + \"118\" \"73\" \"65\"
> + \"114\" \"75\" \"61\"
> + \"108\" \"74\" \"82\""
> + )
> + res <- utils::read.table(
> + con,
> + header = TRUE,
> + row.names = NULL,
> + sep = "\t",
> + as.is = TRUE
> + )
> + close(con)
> + res
> + })
>> names(data.table)
> [1] "A...B...C"
>> head(data.table)
> A...B...C
> 1 115 76 60
> 2 124 78 55
> 3 118 73 65
> 4 114 75 61
> 5 108 74 82
>
>
> Regards,
> Andreas
>
>
>
--
Rainer M. Krug
email: Rainer<at>krugs<dot>de
PGP: 0x0F52F982
signature.asc
Description: PGP signature
- Re: [O] org tables into R?, (continued)
- Re: [O] org tables into R?, Andreas Leha, 2015/01/02
- Re: [O] org tables into R?, Vikas Rawal, 2015/01/02
- Re: [O] org tables into R?, Andreas Leha, 2015/01/04
- Re: [O] org tables into R?, Aaron Ecay, 2015/01/04
- Re: [O] org tables into R?, Nicolas Goaziou, 2015/01/05
- Re: [O] org tables into R?, Aaron Ecay, 2015/01/05
- Re: [O] org tables into R?, Nicolas Goaziou, 2015/01/06
- Re: [O] org tables into R?, Aaron Ecay, 2015/01/06
- Re: [O] org tables into R?, Nicolas Goaziou, 2015/01/06
- Re: [O] org tables into R?, Andreas Leha, 2015/01/06
- Re: [O] org tables into R?,
Rainer M Krug <=
- Re: [O] org tables into R?, Andreas Leha, 2015/01/06
- Re: [O] org tables into R?, Rainer M Krug, 2015/01/06
- Re: [O] org tables into R?, Aaron Ecay, 2015/01/06
- Re: [O] org tables into R?, Rainer M Krug, 2015/01/07
Re: [O] org tables into R?, Michael Gauland, 2015/01/03