I've tried both mean and colMean.

I did success with one attempt using mean, however if only have 1 year and
its a NA
then I get NaN ( which I can replace). I'll keep trying.



On Mon, Apr 26, 2010 at 12:26 AM, Petr PIKAL <petr.pi...@precheza.cz> wrote:

> Hi
>
> r-help-boun...@r-project.org napsal dne 26.04.2010 06:52:55:
>
> > Having some difficulties with understanding how tapply works and getting
> > return values I expect
> >
> > Data: dataframe. DF  DF$Id $D $Year.......
> >
> >  Id                          D  Year Jan Feb Mar Apr May Jun Jul Aug Sep
> Oct
> > Nov Dec
> >  11264402000         1 1980  NA  NA  NA  NA  NA 212 203 209 228 237  NA
> NA
> >  11264402000         0 1981  NA  NA 243 244  NA  NA  NA  NA 225  NA 231
> NA
> >  11264402000         1 1981  NA 251  NA 248 241  NA  NA  NA 235  NA  NA
> 245
> >  11264402000         0 1982 236 237 242 240 242 205 199  NA  NA  NA  NA
> NA
> >  11264402000         1 1982 236  NA  NA 240 242  NA  NA  NA  NA  NA  NA
> NA
> >  11264402000         0 1983  NA 247  NA  NA  NA  NA  NA 205  NA  NA  NA
> NA
> >  11264402000         1 1983  NA 247  NA  NA  NA  NA  NA  NA  NA 225  NA
> NA
> >  11264402000         0 1986  NA  NA  NA 240  NA  NA  NA 213  NA  NA  NA
> NA
> >  11264402000         0 1987 241  NA  NA  NA  NA 218  NA  NA 235 243 240
> NA
> >  11264402000         1 1987  NA  NA  NA  NA  NA 218  NA  NA 235 243 240
> NA
> >  11264402000         3 1987  NA  NA  NA  NA  NA 218  NA  NA 235 243 240
> NA
> >  11264402000         0 1988 238 246 249  NA 244 213 212 224 232 238 232
> 230
> >  11264402000         1 1988 238 246 249 246 244 213 212 224 232  NA  NA
> 230
> >  11264402000         3 1988 238 246 249 246 244 213 212 224 232  NA  NA
> 230
> >  11264402000         0 1989 232 233 238 239 231  NA 215  NA  NA  NA  NA
> 238
> >  11264402000         1 1989 232 233 238 239 231  NA  NA  NA  NA  NA  NA
> 238
> >  11264402000         3 1989 232 233 238 239 231  NA  NA  NA  NA  NA  NA
> 238
> >
> > and the result should be a dataframe of column means by year  with the
> > variable D dropped (or kept doesnt matter)
> >
> > 11264402000         1  1980  NA  NA  NA  NA  NA 212 203 209 228 237  NA
> NA
> >  11264402000        .5  1981  NA  NA 243 244  NA  NA  NA  NA 225  NA 231
>  NA
> >  11264402000        .5  1982 236 237 242 240 242 205 199  NA  NA  NA  NA
>  NA
> >  11264402000        .5  1983  NA 247  NA  NA  NA  NA  NA 205  NA  225 NA
> >  NA
> >  11264402000        1  1986  NA  NA  NA 240  NA  NA  NA 213  NA  NA  NA
> NA
> >  11264402000         2 1987 241  NA  NA  NA  NA 218  NA  NA 235 243 240
> NA
> >  11264402000        1.33 1988 238 246 249  246 244 213 212 224 232 238
> 232
> > 230
> >  11264402000        1.33  1989 232 233 238 239 231  NA 215  NA  NA  NA
> NA
> > 238
> >
> >  It would seem that Tapply should work
> >  result<-tapply( DF[,1:15], DF$Year, colMeans,na.rm=T)
>
> Why colMeans?  It is function used instead of apply(...,.. ,mean).
>
> Maybe you want
>
> result<-tapply( DF[,1:15], DF$Year, mean,na.rm=T)
>
> Regards
> Petr
>
> >
> >  but i get errors about the length of arguments, which
> >
> >    [[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.
>
>

        [[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.

Reply via email to