Re: [O] was this intentional with the default header :results value

2012-07-15 Thread Eric Luo
t...@tsdye.com (Thomas S. Dye) writes:

 Or, fiddling a bit more.

 #+name: luo
 #+BEGIN_SRC R :results output raw
   library(ascii)
   df - data.frame(c1=123456789123456789000,c2=2)
   df$c1 - as.vector(df$c1)
   print(ascii(df,digits=c(0,0),include.rownames=F),type=org)
 #+END_SRC

 #+RESULTS: luo
 |c1 | c2 |
 |---+|
 | 123456789123456789000 |  2 |


Thanks for your help in time, it works like in a charm.




[O] was this intentional with the default header :results value

2012-07-14 Thread Eric Luo

Hi, 
Why in the following code block, c1 was printed as scientific notation
rather then characters.
,
| 
| #+BEGIN_SRC R :results value
|   df - data.frame(c1=123456789123456789,c2=2)
| #+END_SRC
| 
| #+RESULTS:
| | 1.2345678912345678e+17 | 2 |
`
But if the header :results output, the result was expected.
,
| 
| #+BEGIN_SRC R :results output 
|   df - data.frame(c1=123456789123456789,c2=2)
|   df
| #+END_SRC
| 
| #+RESULTS:
| :   c1 c2
| : 1 123456789123456789  2
`

Thanks




Re: [O] was this intentional with the default header :results value

2012-07-14 Thread Thomas S. Dye
Aloha Eric,

Eric Luo eric.we...@gmail.com writes:

 Hi, 
 Why in the following code block, c1 was printed as scientific notation
 rather then characters.
 ,
 | 
 | #+BEGIN_SRC R :results value
 |   df - data.frame(c1=123456789123456789,c2=2)
 | #+END_SRC
 | 
 | #+RESULTS:
 | | 1.2345678912345678e+17 | 2 |
 `

With :results value the results are passed from the source language into
emacs-lisp and then displayed in the buffer.  So, the representation of
things like very large numbers depends on how that was done in
emacs-lisp, independent of the source language conventions.  In this
case, I suspect the number was written with a formatting string and ‘%g’
which uses scientific notation if that is a shorter representation.


 But if the header :results output, the result was expected.
 ,
 | 
 | #+BEGIN_SRC R :results output 
 |   df - data.frame(c1=123456789123456789,c2=2)
 |   df
 | #+END_SRC
 | 
 | #+RESULTS:
 | :   c1 c2
 | : 1 123456789123456789  2
 `


With :results output the results aren't translated into emacs-lisp.
Instead, the output from the source language is collected and displayed
in the buffer.  Thus, the output conventions of the source language are
respected. 

hth,
Tom

-- 
Thomas S. Dye
http://www.tsdye.com



Re: [O] was this intentional with the default header :results value

2012-07-14 Thread Eric Luo
t...@tsdye.com (Thomas S. Dye) writes:

Thanks, it's clear to me with the difference between value and
output now.

whether there is a way to tell emacs-lisp that 123456789123456789 is a
string rather than a number.

emacs-lisp handles the output as expected if the c1 has any character
other than numbers as the following.
,
| #+BEGIN_SRC R
|   df - data.frame(c1=c123456789123456789,c2=2)
|   df$c1 - as.vector(df$c1)
|   df
| #+END_SRC
| 
| #+RESULTS:
| | c123456789123456789 | 2 |
| 
`

 Aloha Eric,

 Eric Luo eric.we...@gmail.com writes:

 Hi, 
 Why in the following code block, c1 was printed as scientific notation
 rather then characters.
 ,
 | 
 | #+BEGIN_SRC R :results value
 |   df - data.frame(c1=123456789123456789,c2=2)
 | #+END_SRC
 | 
 | #+RESULTS:
 | | 1.2345678912345678e+17 | 2 |
 `

 With :results value the results are passed from the source language into
 emacs-lisp and then displayed in the buffer.  So, the representation of
 things like very large numbers depends on how that was done in
 emacs-lisp, independent of the source language conventions.  In this
 case, I suspect the number was written with a formatting string and ‘%g’
 which uses scientific notation if that is a shorter representation.


 But if the header :results output, the result was expected.
 ,
 | 
 | #+BEGIN_SRC R :results output 
 |   df - data.frame(c1=123456789123456789,c2=2)
 |   df
 | #+END_SRC
 | 
 | #+RESULTS:
 | :   c1 c2
 | : 1 123456789123456789  2
 `


 With :results output the results aren't translated into emacs-lisp.
 Instead, the output from the source language is collected and displayed
 in the buffer.  Thus, the output conventions of the source language are
 respected. 

 hth,




Re: [O] was this intentional with the default header :results value

2012-07-14 Thread Thomas S. Dye
Hi Eric,

I don't know any way to do this in Org-mode.  Here is a workaround in R
that might do what you want.

#+name: luo
#+BEGIN_SRC R :results output org
  library(ascii)
  df - data.frame(c1=123456789123456789000,c2=2)
  df$c1 - as.vector(df$c1)
  print(ascii(df),type=org)
#+END_SRC

#+RESULTS: luo
#+BEGIN_ORG
|   | c1| c2   |
|---+---+--|
| 1 | 123456789123456789000 | 2.00 |
#+END_ORG

All the best,
Tom

Eric Luo eric.we...@gmail.com writes:

 t...@tsdye.com (Thomas S. Dye) writes:

 Thanks, it's clear to me with the difference between value and
 output now.

 whether there is a way to tell emacs-lisp that 123456789123456789 is a
 string rather than a number.

 emacs-lisp handles the output as expected if the c1 has any character
 other than numbers as the following.
 ,
 | #+BEGIN_SRC R
 |   df - data.frame(c1=c123456789123456789,c2=2)
 |   df$c1 - as.vector(df$c1)
 |   df
 | #+END_SRC
 | 
 | #+RESULTS:
 | | c123456789123456789 | 2 |
 | 
 `

 Aloha Eric,

 Eric Luo eric.we...@gmail.com writes:

 Hi, 
 Why in the following code block, c1 was printed as scientific notation
 rather then characters.
 ,
 | 
 | #+BEGIN_SRC R :results value
 |   df - data.frame(c1=123456789123456789,c2=2)
 | #+END_SRC
 | 
 | #+RESULTS:
 | | 1.2345678912345678e+17 | 2 |
 `

 With :results value the results are passed from the source language into
 emacs-lisp and then displayed in the buffer.  So, the representation of
 things like very large numbers depends on how that was done in
 emacs-lisp, independent of the source language conventions.  In this
 case, I suspect the number was written with a formatting string and ‘%g’
 which uses scientific notation if that is a shorter representation.


 But if the header :results output, the result was expected.
 ,
 | 
 | #+BEGIN_SRC R :results output 
 |   df - data.frame(c1=123456789123456789,c2=2)
 |   df
 | #+END_SRC
 | 
 | #+RESULTS:
 | :   c1 c2
 | : 1 123456789123456789  2
 `


 With :results output the results aren't translated into emacs-lisp.
 Instead, the output from the source language is collected and displayed
 in the buffer.  Thus, the output conventions of the source language are
 respected. 

 hth,




-- 
Thomas S. Dye
http://www.tsdye.com



Re: [O] was this intentional with the default header :results value

2012-07-14 Thread Thomas S. Dye
Or, fiddling a bit more.

#+name: luo
#+BEGIN_SRC R :results output raw
  library(ascii)
  df - data.frame(c1=123456789123456789000,c2=2)
  df$c1 - as.vector(df$c1)
  print(ascii(df,digits=c(0,0),include.rownames=F),type=org)
#+END_SRC

#+RESULTS: luo
|c1 | c2 |
|---+|
| 123456789123456789000 |  2 |


t...@tsdye.com (Thomas S. Dye) writes:

 Hi Eric,

 I don't know any way to do this in Org-mode.  Here is a workaround in R
 that might do what you want.

 #+name: luo
 #+BEGIN_SRC R :results output org
   library(ascii)
   df - data.frame(c1=123456789123456789000,c2=2)
   df$c1 - as.vector(df$c1)
   print(ascii(df),type=org)
 #+END_SRC

 #+RESULTS: luo
 #+BEGIN_ORG
 |   | c1| c2   |
 |---+---+--|
 | 1 | 123456789123456789000 | 2.00 |
 #+END_ORG

 All the best,
 Tom

 Eric Luo eric.we...@gmail.com writes:

 t...@tsdye.com (Thomas S. Dye) writes:

 Thanks, it's clear to me with the difference between value and
 output now.

 whether there is a way to tell emacs-lisp that 123456789123456789 is a
 string rather than a number.

 emacs-lisp handles the output as expected if the c1 has any character
 other than numbers as the following.
 ,
 | #+BEGIN_SRC R
 |   df - data.frame(c1=c123456789123456789,c2=2)
 |   df$c1 - as.vector(df$c1)
 |   df
 | #+END_SRC
 | 
 | #+RESULTS:
 | | c123456789123456789 | 2 |
 | 
 `

 Aloha Eric,

 Eric Luo eric.we...@gmail.com writes:

 Hi, 
 Why in the following code block, c1 was printed as scientific notation
 rather then characters.
 ,
 | 
 | #+BEGIN_SRC R :results value
 |   df - data.frame(c1=123456789123456789,c2=2)
 | #+END_SRC
 | 
 | #+RESULTS:
 | | 1.2345678912345678e+17 | 2 |
 `

 With :results value the results are passed from the source language into
 emacs-lisp and then displayed in the buffer.  So, the representation of
 things like very large numbers depends on how that was done in
 emacs-lisp, independent of the source language conventions.  In this
 case, I suspect the number was written with a formatting string and ‘%g’
 which uses scientific notation if that is a shorter representation.


 But if the header :results output, the result was expected.
 ,
 | 
 | #+BEGIN_SRC R :results output 
 |   df - data.frame(c1=123456789123456789,c2=2)
 |   df
 | #+END_SRC
 | 
 | #+RESULTS:
 | :   c1 c2
 | : 1 123456789123456789  2
 `


 With :results output the results aren't translated into emacs-lisp.
 Instead, the output from the source language is collected and displayed
 in the buffer.  Thus, the output conventions of the source language are
 respected. 

 hth,




-- 
Thomas S. Dye
http://www.tsdye.com