Hi Judith,

You should use double brackets, like this:

df[[variab]]<-factor(df[[variab]], levels=c("A2B","B31","C33"))

see ?"[" for details, noting that the help page assumes that you know
data.frames are list-like objects.

Best,
Ista

On Mon, Feb 6, 2012 at 2:03 PM, Judith Flores <jur...@yahoo.com> wrote:
> Hello R-users,
>
>    I have a data frame whose names of columns I don't know a priori, but the 
> user of my code will know them. The user is supposed to save the name of the 
> column that will need some reordering of the levels of the factor later on. 
> The name of the column will be saved in an object called:
>
> variab
>
> the data frame is called df.
>
>
> If I try to the do following:
>
> df[variab]<-factor(df[variab], levels=c("A2B","B31","C33"))
>
> it won't work because df[variab] is a data frame. The reason for reordering 
> the levels of the factor is because once that variable is plotted, the levels 
> of the factor need to appear in certain order.
>
>    How can I re-order the levels of a factor whose name I don't know?
>
>
> Thank you,
>
> Judith
>        [[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