Skip to content

R equivalent of Python str()?

7 messages · Ernest Adrogué, jim holtman, michael.weylandt at gmail.com (R. Michael Weylandt +2 more

#
Hi,

I was wondering if there's a function in R that is meant to return a
string representation of an object. Basically, it's like print() but
it doesn't print anything, it only returns a string.

I know there's a str() function but it's not quite the same. I mean a
function that returns the same string that print() would display.
#
?dump
?dput

2012/2/7 Ernest Adrogu? <nfdisco at gmail.com>:

  
    
Possibly as.character() is what the OP was seeking

Michael
On Feb 7, 2012, at 7:15 PM, jim holtman <jholtman at gmail.com> wrote:

            
#
Use
   capture.output(print(yourData))
to capture would be printed by print as a vector
of a strings (one per line of printout).  Paste
together if desired.

Use deparse(yourData) to get a string representation
that can be parsed by R (useful for sending to others
who are using R).

Bill Dunlap
Spotfire, TIBCO Software
wdunlap tibco.com
#
> Possibly as.character() is what the OP was seeking
    > Michael

or   format()   which is closer for numeric data
> On Feb 7, 2012, at 7:15 PM, jim holtman <jholtman at gmail.com> wrote:
>> ?dump
    >> ?dput
    >> 
    >> 2012/2/7 Ernest Adrogu? <nfdisco at gmail.com>:
    >>> Hi,
    >>> 
    >>> I was wondering if there's a function in R that is meant to return a
    >>> string representation of an object. Basically, it's like print() but
    >>> it doesn't print anything, it only returns a string.
    >>> 
    >>> I know there's a str() function but it's not quite the same. I mean a
    >>> function that returns the same string that print() would display.
    >>> 
    >>> --
    >>> Bye, Ernest
    >>> 
    >>> ______________________________________________ R-help at r-project.org
    >>> mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do
    >>> read the posting guide http://www.R-project.org/posting-guide.html
    >>> and provide commented, minimal, self-contained, reproducible code.
    >> 
    >> 
    >> 
    >> -- 
    >> Jim Holtman Data Munger Guru
    >> 
    >> What is the problem that you are trying to solve?  Tell me what you
    >> want to do, not how you want to do it.
    >> 
    >> ______________________________________________ R-help at r-project.org
    >> mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do
    >> read the posting guide http://www.R-project.org/posting-guide.html and
    >> provide commented, minimal, self-contained, reproducible code.

    > ______________________________________________ R-help at r-project.org
    > mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do
    > read the posting guide http://www.R-project.org/posting-guide.html and
    > provide commented, minimal, self-contained, reproducible code.
#
8-02-2012, 09:45 (+0100); Martin Maechler escriu:
Thanks for the suggestions, but none of these appears to do what I
need. Take a table such as
A   B 
450  12 

The string that print() prints is " A B \n450 12 \n". Once you have
the string you can print it with cat() and get the same result as with
print().
A   B 
450  12 

The function that I was looking for was one that given the table a in
the example would return the string described above. Apparently,
capture.output() can be used for that, although it returns the string
split into lines they can be joined together easily. So, case closed
:)
#
8-02-2012, 04:22 (+0000); William Dunlap escriu:
This will do it!!

Thanks.