[R] Scanning data files line-by-line

R A F raf1729 at hotmail.com
Wed Apr 30 15:25:00 CEST 2003


Thanks very much.  I guess the answer leads to more questions:

(a) What if I don't know the number of lines?  So I would like to use
    a while loop until readLines hits an EOF character.  Would that
    be possible?

(b) When readLines is used, a string is returned.  I'd like to split
    the string into fields, and Andy Liaw suggested strsplit, but the
    number of spaces between fields is variable.  So for example, one
    line could be 1 space 2 space space 3 and the next line could be
    4 space space 5 space 6, so I could not do a strsplit using " ".

    Really what I know is the variable type of each field -- for
    example, each line is double, string, then double, etc.  How
    would one use this information to split the string given by
    readLines?

Thanks very much again!

>From: Prof Brian Ripley <ripley at stats.ox.ac.uk>
>To: R A F <raf1729 at hotmail.com>
>CC: R-help at stat.math.ethz.ch
>Subject: Re: [R] Scanning data files line-by-line
>Date: Wed, 30 Apr 2003 14:13:26 +0100 (BST)
>
>It's open() you need, as in
>
>con <- file("file")
>open(con)
>for(i in 1:10) print(readLines(con, n=1))
>close(con)
>
>In C you would need to (f)open a file to read it line-by-line, just as
>here.
>
>The first two lines can be collapsed to
>
>con <- file("file", "r")



More information about the R-help mailing list