From Kurt.Hornik@ci.tuwien.ac.at  Fri Aug 31 13:03:24 2001
From: Kurt.Hornik@ci.tuwien.ac.at (Kurt Hornik)
Date: Fri, 31 Aug 2001 14:03:24 +0200
Subject: [Rd] RFC: type conversion in read.table
In-Reply-To: <3B865419.68732554@research.bell-labs.com>
References: <Pine.LNX.4.31.0108240825520.29809-100000@gannet.stats>
 <3B865419.68732554@research.bell-labs.com>
Message-ID: <15247.32012.939118.454204@mithrandir.hornik.net>

>>>>> John Chambers writes:

> Prof Brian Ripley wrote:
>> 
>> Currently read.table is rather limited in its type conversion.
>> The algorithm is
>> 
>> 0) Read as character
>> 1) Try to convert to numeric. If that works, quit
>> 2) Convert to factor unless !as.is.
>> 
>> I am thinking about adding more flexibility and more classes by the
>> following two changes.
>> 
>> A) Anticipating the arrival of classes for all R objects, add an
>> argument say `colClasses' that allows the user to specify the desired
>> class for every column.  This could default to "auto", or NA if people
>> think "auto" might be a relevant class name one day.
>> 
>> The effect would be equivalent to running
>> 
>> data[[i]] <- as(data[[i]], colClasses[i])
>> 
>> instead of
>> 
>> data[[i]] <- type.convert(data[[i]], as.is = as.is[i], dec = dec)
>> 
>> except that standard classes such as "numeric", "factor", "logical",
>> "character" would be dispatched directly, and argument "dec" would be
>> consulted where appropriate.
>> 
>> colClasses = "character" would suppress all conversions, which cannot
>> currently be done.

Just a small remark.  I would prefer `NA' to "auto" (or "unknown").  May
be too late to change this now :-)

I would also be happier if we did not refer to the variables explicitly
as `columns'.  (This sounds a bit stupid from the person who wrote
write.table and introduced arguments `row.names' and `col.names'.
Although, at least one of these was modelled after an existing
function).  E.g. something like

	read.table(......, caseNames, varNames, varClasses, .....)

would be nice ...

-k
-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-
r-devel mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html
Send "info", "help", or "[un]subscribe"
(in the "body", not the subject !)  To: r-devel-request@stat.math.ethz.ch
_._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._


[Rd] RFC: type conversion in read.table
Kurt Hornik