[R] model formula

John Fox jfox at mcmaster.ca
Tue Nov 18 19:57:28 CET 2003


Dear Bill,

I believe that lm(y ~ z + I((z == 1)*x)) will give you what you want.

I hope that this helps,
  John

At 08:40 AM 11/18/2003 -0500, you wrote:
>I have continuous variables x, y, z. The plot of the data looks like this:
>
>y
>|                           z=1(o), 2(@), 3(#), 4(*)
>|
>|*   *  *
>|
>|
>|#   #   #  #
>|
>|
>|@    @    @  @
>|
>|                     o
>|               o
>|          o
>|     o
>|o
>------------------------ x
>The correct model appears to be: if z==1, y~x+z; else y~z
>(y~z + z:x isn't it)
>
>How can I express this model in lm()? If I can't express it properly in
>lm(), what is the best way to fit the model?

____________________________
John Fox
Department of Sociology
McMaster University
email: jfox at mcmaster.ca
web: http://www.socsci.mcmaster.ca/jfox




More information about the R-help mailing list