Re: [R] Reading multiple tables from file

From: jim holtman <jholtman_at_gmail.com>
Date: Thu, 08 May 2008 14:31:28 -0400

Will this do it for you:

> x <- readLines(textConnection("1

+ Pietje
+ I1 I2 Value
+ 1  1  0.11
+ 1  2  0.12
+ 2  1  0.21
+
+ 2
+ Jantje
+ I1 I2 I3 Value
+ 1  1  1  0.111
+ 3  3  3  0.333"))

> closeAllConnections()
> start <- grep("^[[:digit:]]+$", x)
> mark <- vector('integer', length(x))
> mark[start] <- 1
> # determine limits of each table
> mark <- cumsum(mark)
> # split the data for reading
> df <- lapply(split(x, mark), function(.data){

+     .input <- read.table(textConnection(.data), skip=2, header=TRUE)
+     attr(.input, 'name') <- .data[2]  # save the name
+     .input
+ })

> # rename the list
> names(df) <- sapply(df, attr, 'name')
> df

$Pietje
  I1 I2 Value
1  1  1  0.11
2  1  2  0.12
3  2  1  0.21

$Jantje
  I1 I2 I3 Value
1 1 1 1 0.111
2 3 3 3 0.333

On Thu, May 8, 2008 at 7:40 AM, G. Draisma <g.draisma_at_erasmusmc.nl> wrote:
> Dear R-users,
> I have output files having a variable number of tables
> in the following format:
> -------------
> 1
> Pietje
> I1 I2 Value
> 1 1 0.11
> 1 2 0.12
> 2 1 0.21

>

> 2
> Jantje
> I1 I2 I3 Value
> 1 1 1 0.111
> 3 3 3 0.333
> ...
> -------------
>

> Would there be an easy way
> of turning this into (a list of) data.frames
> with names Pietje, Jantje
> and variables I1,I2,...Value?
> (I1,I2 are string or categorical,
> Value is double).
>

> I used an sed script to extract the tables
> from the file into separte file,
> but would rather be able to process
> the output files directly.
>

> Thanks,
> Gerrit.
>

> --
> Gerrit Draisma
> Department of Public Health
> Erasmus MC, University Medical Center Rotterdam
> Room AE-103
> P.O. Box 2040 3000 CA Rotterdam The Netherlands
> Phone: +31 10 7043124 Fax: +31 10 010-7038474
> http://mgzlx4.erasmusmc.nl/pwp/?gdraisma
>

> ______________________________________________
> 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
Cincinnati, OH
+1 513 646 9390

What is the problem you are trying to solve?

______________________________________________
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.
Received on Thu 08 May 2008 - 18:39:32 GMT

Archive maintained by Robert King, hosted by the discipline of statistics at the University of Newcastle, Australia.
Archive generated by hypermail 2.2.0, at Fri 09 May 2008 - 13:30:35 GMT.

Mailing list information is available at https://stat.ethz.ch/mailman/listinfo/r-help. Please read the posting guide before posting to the list.

list of date sections of archive