[R] RE: more on lm(y~x) question: removing NA´s
Liaw, Andy
andy_liaw at merck.com
Tue May 4 16:02:22 CEST 2004
1. If your code actually runs, you should upgrade R, and quit using `_' for
assignment... 8-)
2. You seem to have an extraneous `]' after the na.exclude. Could that be
the problem?
Andy
> From: Christoph Scherber
>
> actually, the situation is much more complicated. I am producing
> multiple graphs within a "for" loop. For some strange reason, the
> plotting routine always stops once lm(y~x) encounters more than one
> missing value (I have marked the important bit with "***********"):
>
> par(mfrow=c(5,5))
> p_seq(3,122,2)
> i_0
> k_0
> number_0
> for (i in p) {
> j_foranalysis[93:174,i+1]
> k_foranalysis[93:174,i]
> df_data.frame(j,k)
> mainlab1_substring(names(foranalysis[i]),2,8)
> mainlab2_"; corr.:"
> mainlab3_round(cor(j,k,na.method="available"),4)
> mainlab4_"; excl.Mono:"
> mainlab5_round(cor(j[j<0.9],k[j<0.9],na.method="available"),4)
> mainlab_paste(mainlab1,mainlab2,mainlab3,mainlab4,mainlab5)
> plot(k,j,main=mainlab,xlab="% of total biomass",ylab="% of total
> cover",pch="n")
> for (k in 1:length(foranalysis[93:174,i]))
> number[k]_substring(plotcode[foranalysis[k,1]],1,5)
> text(foranalysis[93:174,i],foranalysis[93:174,i+1],number)
> **********************************
> model_lm(j~k,na.action=na.exclude])
> **********************************
> abline(model)
> abline(0,1,lty=2)
> }
>
> Does anyone have any suggestions on this?
>
> Best regards
> Chris.,
>
>
>
>
> Liaw, Andy wrote:
>
> >By (`factory') default that's done for you automagically, because
> >options("na.action") is `na.omit'.
> >
> >If you really want to do it `by hand', and have the data in
> a data frame,
> >you can use something like:
> >
> >lm(y ~ x, df[complete.cases(df),])
> >
> >HTH,
> >Andy
> >
> >
> >
> >>From: Christoph Scherber
> >>
> >>Dear all,
> >>
> >>I have a data frame with different numbers of NA´s in each
> >>column, e.g.:
> >>
> >>x y
> >>1 2
> >>NA 3
> >>NA 4
> >>4 NA
> >>1 5
> >>NA NA
> >>
> >>
> >>I now want to do a linear regression on y~x with all the NA´s
> >>removed.
> >>The problem now is that is.na(x) (and is.na(y) obviously
> >>gives vectors
> >>with different lengths. How could I solve this problem?
> >>
> >>Thank you very much for any help.
> >>
> >>Best regards
> >>Chris
> >>
>
More information about the R-help
mailing list