[R] Reading in csv with footer
William Dunlap
wdunlap at tibco.com
Mon Feb 13 01:35:06 CET 2012
That prints nicely, but the first column in the
result got turned into a factor:
> d <- head(read.csv(textConnection(Lines)), -1)
> str(d)
'data.frame': 3 obs. of 3 variables:
$ label_1: Factor w/ 4 levels "1","2","3","Total Rows: 3": 1 3 2
$ label_2: int 2 2 3
$ label_3: int 3 4 4
(Remove the call to head and you will see why.)
You could use head(,-1) on the output of readLines so
read.csv never sees the last value:
> d2 <- read.csv(textConnection(head(readLines(textConnection(Lines)), -1)))
> str(d2)
'data.frame': 3 obs. of 3 variables:
$ label_1: int 1 3 2
$ label_2: int 2 2 3
$ label_3: int 3 4 4
or you could use a pipe connection that called the shell script.
Bill Dunlap
Spotfire, TIBCO Software
wdunlap tibco.com
> -----Original Message-----
> From: r-help-bounces at r-project.org [mailto:r-help-bounces at r-project.org] On Behalf Of Henrique
> Dallazuanna
> Sent: Sunday, February 12, 2012 4:27 PM
> To: Noah Silverman
> Cc: r-help
> Subject: Re: [R] Reading in csv with footer
>
> This works for me:
>
> Lines <- "label_1, label_2, label_3
> 1,2,3
> 3,2,4
> 2,3,4
> Total Rows: 3"
>
> d <- head(read.csv(textConnection(Lines)), -1)
> closeAllConnections()
>
> On Sun, Feb 12, 2012 at 10:05 PM, Noah Silverman <noahsilverman at ucla.edu>wrote:
>
> > Hi,
> >
> > I have a CSV file that is formatted well, except that the last line is a
> > "summary" not is CSV format.
> >
> > Toy example:
> >
> > label_1, label_2, label_3
> > 1,2,3
> > 3,2,4
> > 2,3,4
> > Total Rows: 3
> >
> >
> > When I try to import this into R with: d <- read.table("foo.csv",
> > header=T, sep=",")
> > It fails to import properly because of the last line.
> >
> > Currently, I have a shell script that strips the last line from the file,
> > then it imports to R cleanly. I don't like this extra layer of processing.
> >
> > Is there a way to import something like this cleanly in R.
> >
> > Thanks!
> >
> > --
> > Noah
> > ______________________________________________
> > 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.
> >
>
>
>
> --
> Henrique Dallazuanna
> Curitiba-Paraná-Brasil
> 25° 25' 40" S 49° 16' 22" O
>
> [[alternative HTML version deleted]]
More information about the R-help
mailing list