You could use the strapply function from the gsubfn package to extract the
data from strings.  This will return a list that you could use with
do.call(rbind(

The stringr package may have something similar or an alternative (but I am
less familiar with that package).


On Thu, Jan 17, 2013 at 9:21 PM, Frank Singleton <b17fly...@gmail.com>wrote:

> 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@r-project.org mailing list
> https://stat.ethz.ch/mailman/**listinfo/r-help<https://stat.ethz.ch/mailman/listinfo/r-help>
> PLEASE do read the posting guide http://www.R-project.org/**
> posting-guide.html <http://www.R-project.org/posting-guide.html>
> and provide commented, minimal, self-contained, reproducible code.
>



-- 
Gregory (Greg) L. Snow Ph.D.
538...@gmail.com

        [[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