On Sep 14, 2008, at 4:01 PM, Jason Thibodeau wrote:

TEST_filter("line50grab.csv","line50grab_filterout.csv")
Error in `[.data.frame`(data_tmp, seq(842, 2411)) :
 undefined columns selected


I am guessing that you wrapped some code into a function but you did not provide the function. You are not really following the posting guidelines here.


I know my file has about 3000 columns.

This happened when I used:
data_tmp <- read.csv(filein, header=TRUE, nrows=10, skip=nskip)
                       data_filter <- data_tmp[seq(842,2411)]
write.table(data_filter, fileout, append = TRUE,
sep= ",", row.names= FALSE, col.names = FALSE)

Also using data_tmp[842:2411] did not yield any output being written to my
file.

Not a big surprise. Appears the error preceded the write.table call.

I have another slightly unrelated problem, but I'll propose that after this
one can be solved.

If the problem is not with the syntax or semantics of TEST_filter as I suspect, then perhaps you should examine the input file from R's perspective with:

?count.fields

Hard to tell without the actual code and sample data.

--
David Winsemius



Thanks a lot.

On Sun, Sep 14, 2008 at 2:14 PM, Jason Thibodeau <[EMAIL PROTECTED]>wrote:

Jim, this is a GREAT help. I was trying something similar before, but I was
unable to detect EOF. Thanks for the help!

Also, David, your suggestion worked perfectly.

Thanks for all the help, everyone!


On Sun, Sep 14, 2008 at 2:08 PM, jim holtman <[EMAIL PROTECTED]> wrote:

Have you tried:

data_filter <- data[842:2411]

Also if you have a lot of data to read, I would suggest that you use a
connection, and it all the data is numeric, possibly 'scan'.  If you
do use a connection, this would eliminate having to 'skip' each time
which could be time consuming on a large file. Since it appears that you are not writing out the column names in the output file, you could
bypass the header line on the file by readLine after the open.  So
something like this might work:

input <- file('yourfile','r')
invisible(readLines(input, n=1))  # skip the header
while (TRUE){  # read file
x <- try(read.csv(input, n=320, header=FALSE), silent=TRUE) # catch
EOF
  if (inherits(x, 'try-error')) break
  write.csv(.......)
}



On Sun, Sep 14, 2008 at 12:22 PM, Jason Thibodeau <[EMAIL PROTECTED] >
wrote:
Hello,

I realize that using: x[x > 3 & x < 5] I can fetch all elements between
3
and 5. However I read in from a CSV file, and I would like to fetch all columns from within a range ( 842-2411). In teh past, I have done this
to
fetch just select few columns:

data <- read.csv(filein, header=TRUE, nrows=320, skip=nskip)
                      data_filter <- data[c(2,12,17)]
write.table(data_filter, fileout, append = TRUE,
sep= ",", row.names= FALSE, col.names = FALSE)
                      nskip <- nskip+320

This time, however, instead of grabbing columns 2, 12, 17, I woudl like
all
columns in the range of 842-2411. I can't seem to do this correctly.
Could
somebody please provide some insight? Thanks in advance.

--
Jason Thibodeau

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




--
Jim Holtman
Cincinnati, OH
+1 513 646 9390

What is the problem that you are trying to solve?




--
Jason Thibodeau




--
Jason Thibodeau

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

______________________________________________
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