Thanks Gabor, I have two questions:

1- Is there any difference between your code and the following one, with 
regards to Fld2 ?

### test ###

Input <- "Fld1 Fld2
10 A
20 B
30 C
40 A
"
DF <- read.table(textConnection(Input), header = TRUE)

DF$Fld2<-factor(DF$Fld2,levels= c("C", "A", "B")))

2- do you see any way to bring flexibility to your method ? Because, it 
looks to me as, at this stage, I have to i) know the order of my levels 
before I read the table and ii) create one class per factor.
My problem is that I am not really working on a specific dataset. My 
goal is to develop R scripts capable of handling datasets which have 
various contents but close structures. So, I really need to minimize the 
quantity of "user-specific" code.

Sebastien

Gabor Grothendieck a écrit :
> You can create your own class and pass that to read table.  In
> the example below Fld2 is read in with factor levels C, A, B
> in that order.
>
>
> library(methods)
> setClass("my.levels")
> setAs("character", "my.levels",
>   function(from) factor(from, levels = c("C", "A", "B")))
>
>
> ### test ###
>
> Input <- "Fld1 Fld2
> 10 A
> 20 B
> 30 C
> 40 A
> "
> DF <- read.table(textConnection(Input), header = TRUE,
>   colClasses = c("numeric", "my.levels"))
> str(DF)
> # or
> DF <- read.table(textConnection(Input), header = TRUE,
>   colClasses = list(Fld2 = "my.levels"))
> str(DF)
>
>
> On 8/28/07, Sébastien <[EMAIL PROTECTED]> wrote:
>   
>> Dear R-users,
>>
>> I have found this not-so-recent post in the archives  -
>> http://tolstoy.newcastle.edu.au/R/devel/00a/0291.html - while I was
>> looking for a particular way to reorder factor levels. The question
>> addressed by the author was to know if the read.table function could be
>> modified to order the levels of newly created factors "according to the
>> order that they appear in the data file". Exactly what I am looking for.
>> As there was no reply to this post, I wonder if any move have been made
>> towards the implementation of this suggestion. A quick look at
>> ?read.table tells me that if this option was implemented, it was not in
>> the read.table function...
>>
>> Sebastien
>>
>> PS: I am sorry to post so many messages on the list, but I am learning R
>> (basically by trials & errors ;-) ) and no one around me has even a
>> slight notion about it...
>>
>> ______________________________________________
>> R-help@stat.math.ethz.ch 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.
>>
>>     
>
>
>   

        [[alternative HTML version deleted]]

______________________________________________
R-help@stat.math.ethz.ch 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