Eric C. Jennings
2005-Apr-16 04:29 UTC
[R] "chronological" ordering of factor in lm() and plot()
I am trying to do some basic regression and ANOVA on cycle times (numeric vectors) across weekdays (character vector), where I have simply labelled my days as: days<- c("mon","tue","wed"...etc). (NOTE: There are actually multiple instances of each day, and the data is read-in from a .dat file.) I have no trouble at all with the actual number crunching, It is the "proper" ordering of the factor that I am asking about. R first alphabetizes it("fri","mon","thu"...) before doing the work of lm(), aov() and especially plot(). I have tried as.ordered(factor( )), but that doesn't do anything. If I re-assign levels() in the way that I want, that just renames the the levels of the factor but does not reorder it internally. I've looked at chron(), but that seems to entail using a numeric vector instead of a character vector. How can I get it to "properly" (chronologically) order the factor. (In some ways I'm thinking that all I can do is: days<- c("a.mon","b.tues","c.wed"...etc) Thanks for all that you can do Eric Jennings matheric at u.washington.edu matheric at myuw.net
Gabor Grothendieck
2005-Apr-16 05:31 UTC
[R] "chronological" ordering of factor in lm() and plot()
On 4/16/05, Eric C. Jennings <matheric at myuw.net> wrote:> I am trying to do some basic regression and ANOVA on cycle times (numeric > vectors) across weekdays (character vector), where I have simply labelled my > days as: > days<- c("mon","tue","wed"...etc). > (NOTE: There are actually multiple instances of each day, and the data is > read-in from a .dat file.) > > I have no trouble at all with the actual number crunching, It is the > "proper" ordering of the factor that I am asking about. R first alphabetizes > it("fri","mon","thu"...) before doing the work of lm(), aov() and especially > plot(). > > I have tried as.ordered(factor( )), but that doesn't do anything. > If I re-assign levels() in the way that I want, that just renames the the > levels of the factor but does not reorder it internally. > I've looked at chron(), but that seems to entail using a numeric vector > instead of a character vector. > > How can I get it to "properly" (chronologically) order the factor. (In some > ways I'm thinking that all I can do is: > days<- c("a.mon","b.tues","c.wed"...etc) >Try this:> f.wrong <- factor(c("mon", "fri", "mon", "fri")) > f.wrong[1] mon fri mon fri Levels: fri mon> f.right <- factor(f.wrong, levels = c("mon", "fri")) > f.right[1] mon fri mon fri Levels: mon fri
Bill.Venables@csiro.au
2005-Apr-16 05:42 UTC
[R] "chronological" ordering of factor in lm() and plot()
First put> day.names <- c("sun", "mon", "tue", "wed", "thu", "fri", "sat")then> days <- factor(as.character(days), levels = day.names)will ensure the ordering you want. Bill Venables. -----Original Message----- From: r-help-bounces at stat.math.ethz.ch [mailto:r-help-bounces at stat.math.ethz.ch] On Behalf Of Eric C. Jennings Sent: Saturday, 16 April 2005 2:29 PM To: R-help Subject: [R] "chronological" ordering of factor in lm() and plot() I am trying to do some basic regression and ANOVA on cycle times (numeric vectors) across weekdays (character vector), where I have simply labelled my days as: days<- c("mon","tue","wed"...etc). (NOTE: There are actually multiple instances of each day, and the data is read-in from a .dat file.) I have no trouble at all with the actual number crunching, It is the "proper" ordering of the factor that I am asking about. R first alphabetizes it("fri","mon","thu"...) before doing the work of lm(), aov() and especially plot(). I have tried as.ordered(factor( )), but that doesn't do anything. If I re-assign levels() in the way that I want, that just renames the the levels of the factor but does not reorder it internally. I've looked at chron(), but that seems to entail using a numeric vector instead of a character vector. How can I get it to "properly" (chronologically) order the factor. (In some ways I'm thinking that all I can do is: days<- c("a.mon","b.tues","c.wed"...etc) Thanks for all that you can do Eric Jennings matheric at u.washington.edu matheric at myuw.net ______________________________________________ R-help at 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