Since stdin seemed simpler I figured textConnection must have some
advantage. 

 

Thanks!

Bob

 

From: Gabor Grothendieck [mailto:ggrothendi...@gmail.com] 
Sent: Saturday, July 11, 2009 6:00 PM
To: Muenchen, Robert A (Bob)
Cc: R-help@r-project.org
Subject: Re: [R] Reading data entered within an R program

 


Both will work if you copy and paste directly into an R session
but textConnection has the advantage that you can place
it in a file and source it and it still works.

On Sat, Jul 11, 2009 at 4:38 PM, Muenchen, Robert A (Bob)
<muenc...@utk.edu> wrote:

Dear R-helpers,

I know of two ways to reading data within an R program, using
textConnection and stdin (demo program below). I've Googled about and
looked in several books for comparisons of the two approaches but
haven't found anything. Are there any particular advantages or
disadvantages to these two approaches? If you were teaching R beginners,
which would you present?

Thanks,
Bob
http://RforSASandSPSSusers.com


# R Program to Read Data Within a Program.
# Very similar to SAS datalines or cards statements,
# and SPSS BEGIN DATA / END DATA commands.

# This stores the data as one long text string.

mystring <-
"workshop,gender,q1,q2,q3,q4
01,1,f,1,1,5,1
02,2,f,2,1,4,1
03,1,f,2,2,4,3
04,2, ,3,1, ,3
05,1,m,4,5,2,4
06,2,m,5,4,5,5
07,1,m,5,3,4,4
08,2,m,4,5,5,5"

# The textConnection function allows read.csv to
# read data from the text string just as it would
# from a file.
# The leading zero on first column helps show that
# R is storing row names as a character vector.

mydata <- read.csv( textConnection(mystring) )
mydata


mydata <- read.csv( stdin() )
workshop,gender,q1,q2,q3,q4
01,1,f,1,1,5,1
02,2,f,2,1,4,1
03,1,f,2,2,4,3
04,2, ,3,1, ,3
05,1,m,4,5,2,4
06,2,m,5,4,5,5
07,1,m,5,3,4,4
08,2,m,4,5,5,5

#The blank line above tells R to stop reading.
mydata

# Read it again stripping out blanks and setting
# "nothing" to be missing for gender.

mydata <- read.csv( stdin(), strip.white=TRUE, na.strings="" )
workshop,gender,q1,q2,q3,q4
01,1,f,1,1,5,1
02,2,f,2,1,4,1
03,1,f,2,2,4,3
04,2, ,3,1, ,3
05,1,m,4,5,2,4
06,2,m,5,4,5,5
07,1,m,5,3,4,4
08,2,m,4,5,5,5

mydata

______________________________________________
R-help@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.




        [[alternative HTML version deleted]]

______________________________________________
R-help@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.

Reply via email to