try putting as.character in the call: x = read.csv(as.character(V4[[i]]), header = FALSE
On Wed, Oct 15, 2008 at 4:46 PM, Ted Byers <[EMAIL PROTECTED]> wrote: > > Here is what I tried: > > optdata = > read.csv("K:\\MerchantData\\RiskModel\\AutomatedRiskModel\\soptions.dat", > header = FALSE, na.strings="") > optdata > attach(optdata) > for (i in 1:length(V4) ) { x = read.csv(V4[[i]], header = FALSE, > na.strings="");x } > > And here is the outcome (just a few of the 60 records successfully read): >> optdata = >> read.csv("K:\\MerchantData\\RiskModel\\AutomatedRiskModel\\soptions.dat", >> header = FALSE, na.strings="") >> optdata > V1 V2 V3 V4 > 1 251 2008 18 Plus_Shipping.2008.18.dat > 2 251 2008 19 Plus_Shipping.2008.19.dat > 3 251 2008 20 Plus_Shipping.2008.20.dat > 4 251 2008 22 Plus_Shipping.2008.22.dat > 5 251 2008 23 Plus_Shipping.2008.23.dat > 6 251 2008 24 Plus_Shipping.2008.24.dat > > I can see the data has been correctly read. But for some reason that isn't > clear, read.csv doesn't like the data in the last column. > >> attach(optdata) >> for (i in 1:length(V4) ) { x = read.csv(V4[[i]], header = FALSE, >> na.strings="");x } > Error in read.table(file = file, header = header, sep = sep, quote = quote, > : > 'file' must be a character string or connection >> V4[[1]] > [1] Plus_Shipping.2008.18.dat > 60 Levels: Easyway.2008.17.dat Easyway.2008.18.dat Easyway.2008.19.dat > Easyway.2008.20.dat ... Secured_Pay.2008.31.dat > >> > > The last column is comprised of valid Windows filenames (and no whitespace, > so as not to confuse things). > > I see in the docuentation "`[[...]]' is the operator used to select a single > element, whereas `[...]' is a general subscripting operator.", so I assume > V4[[i]] is the correct way to get the ith value from V4. So why does > read.csv complain that "'file' must be a character string or connection"? > It seems obvious that the value in V4[[i]i] is a string. V4[[1]] does give > me the right value, although that is followed by output I didn't ask for. > > In the loop above, I was going to replace the output obtained by 'x' with > output from fitdistr(x,"exponential"), but I can't proceed with that until I > can get the data in these files read. > > What have I missed? > > Thanks > > Ted > -- > View this message in context: > http://www.nabble.com/Argh%21--Trouble-using-string-data-read-from-a-file-tp20002064p20002064.html > Sent from the R help mailing list archive at Nabble.com. > > ______________________________________________ > 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? ______________________________________________ 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.