Re: [R] how to (combine / recode / merge) two factor.

From: Chuck Cleland <ccleland_at_optonline.net>
Date: Wed 24 Aug 2005 - 02:55:24 EST

interaction(df$f1, df$f2)

?interaction

laurent buffat wrote:
> Hi,
> I have a data frame with two factors, and I would like to create a new
> one by "combining" them.
> I have already a solution, but it is very "heavy", and I'm sure there is
> a basic function which can do the same.
> I tried to find it in the R-help, but without result.
>
> See the example :
>
> # just to create a dataframe
> f1 <- factor(rep(c("A","B"),3))
> f2 <- factor(rep(c("x","y","z"),each=2))
> df <- data.frame(f1,f2)
> df <- rbind(df,df,df)
>
> # here is what I want do do :
> df$f1f2 <-
> factor(as.numeric(df$f1)+(as.numeric(df$f2)-1)*nlevels(df$f1), labels=
> letters[1:(nlevels(df$f1)*nlevels(df$f2))])
> # I don't care about the labels.
>
> df :
> > df
> f1 f2 f1f2
> 1 A x a
> 2 B x b
> 3 A y c
> 4 B y d
> 5 A z e
> 6 B z f
> 11 A x a
> 21 B x b
> 31 A y c
> 41 B y d
> 51 A z e
> 61 B z f
> 12 A x a
> 22 B x b
> 32 A y c
> 42 B y d
> 52 A z e
> 62 B z f
> >
>
>
> Thanks for your helps,
>
> Laurent Buffat
>
> ______________________________________________
> 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
>
>

-- 
Chuck Cleland, Ph.D.
NDRI, Inc.
71 West 23rd Street, 8th floor
New York, NY 10010
tel: (212) 845-4495 (Tu, Th)
tel: (732) 452-1424 (M, W, F)
fax: (917) 438-0894

______________________________________________
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
Received on Wed Aug 24 03:15:32 2005

This archive was generated by hypermail 2.1.8 : Sun 23 Oct 2005 - 15:47:04 EST