[R] 2 plots sharing axis / combining factors

John Fox jfox at mcmaster.ca
Tue Oct 1 14:31:40 CEST 2002


Dear Juli,

At 05:22 PM 9/30/2002 +0200, juli g. pausas wrote:

>- How could I convert 2 factor variables in a single factor variable
>which is the combination of the other 2.
>Example:
>     lith: a factor 2 levels "ca", "ma"
>     sp: a factor with 2 levels, "ph", "qi"
>and I'd like to obtain:
>     splith: a factor with 4 levels: phma, phca, qima, qica
>
>on way is by using ifelse:
>
>splith <- as.factor(ifelse(sp=="ph", ifelse(lith=="ma", "phma", "phca"),
>ifelse(lith=="ma", "qima", "qica")))
>
>which works fine, but I've got the feeling that it can be done in a more
>efficient way, especially for other cases where factors have more than 2
>levels.

How about this?

         splith <- factor(paste(as.character(lith),as.character(sp), sep="."))

If you prefer that the levels be pasted without the periods, then you could 
use sep="".

John




-----------------------------------------------------
John Fox
Department of Sociology
McMaster University
Hamilton, Ontario, Canada L8S 4M4
email: jfox at mcmaster.ca
phone: 905-525-9140x23604
web: www.socsci.mcmaster.ca/jfox
-----------------------------------------------------

-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-
r-help 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-help-request at stat.math.ethz.ch
_._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._



More information about the R-help mailing list