[R] reading multiple key=value pairs per line
    arun 
    smartpink111 at yahoo.com
       
    Fri Jan 18 15:37:16 CET 2013
    
    
  
Hi,
Sorry, there was a mistake.  I didn't notice comma in key3
.Lines1<-readLines(textConnection('key1=23, key2=67, key3="hello there"
key1=7, key2=22, key3="how are you"
key1=2, key2=77, key3="nice day, thanks"'))
res1<-read.table(text=gsub("key{0,1}\\d","",gsub("[\"]","",Lines1)),sep="=",header=FALSE,stringsAsFactors=F)[-1]
 res1[,1:2]<-sapply(res1[,1:2],function(x) as.numeric(gsub("\\, $","",x)))
names(res1)<- paste(substr(Lines1,1,3),1:3,sep="")
res1
#  key1 key2             key3
#1   23   67      hello there
#2    7   22      how are you
#3    2   77 nice day, thanks
 str(res1)
#'data.frame':    3 obs. of  3 variables:
# $ key1: num  23 7 2
# $ key2: num  67 22 77
# $ key3: chr  "hello there" "how are you" "nice day, thanks"
A.K.
----- Original Message -----
From: Frank Singleton <b17flyboy at gmail.com>
To: r-help at r-project.org
Cc: 
Sent: Thursday, January 17, 2013 11:21 PM
Subject: [R] reading multiple key=value pairs per line
Hi,
Thanks for a great environmentfor statistical  computing :-)
I have some input data in a file ("input_kvpairs.csv") of the form
key1=23, key2=67, key3="hello there"
key1=7, key2=22, key3="how are you"
key1=2, key2=77, key3="nice day, thanks"
Now in my head I wish it was of the form ("input.csv")
#key1, key2, key3
23,    67,   "hello there"
7,     22,   "how are you"
2,     77,   "nice day, thanks"
so I could do
data <- read.csv("input.csv", header=TRUE)
where the header column names are derived from the key names dynamically,
and I could access the data using normal data$key1 or data$key2 mechanism.
I guess I could just pre process the file first  using python etc to create
a CSV file with column header derived from key names, and values derived from
key values, but I am interested to see how experienced R folks would handle this
inside R.
Thanks,
Frank
______________________________________________
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.
    
    
More information about the R-help
mailing list