[R] Odp: tapply, mean and subset
Petr PIKAL
petr.pikal at precheza.cz
Tue Nov 13 11:30:46 CET 2007
Hi
r-help-bounces at r-project.org napsal dne 13.11.2007 10:59:09:
> Dear list,
>
> I have this dataframe
>
> V1 V2 F1
> 1 A 2 0
> 2 A 3 0
> 3 A 4 1
> 4 B 3 0
> 5 B 2 1
> 6 C 6 0
> 7 C 2 0
> 8 C 6 0
>
> and would like to calculate a new column
> with mean-values, following this rule
>
> 1. If F1 = 0 calculate the mean from V2
> for each factor in V1.
>
> 2. If F1 = 1, then F1_mean = 0
>
> So, the new DF should look like this
>
> V1 V2 F1 F1_mean
> 1 A 2 0 2.5
> 2 A 3 0 2.5
> 3 A 4 1 0.0
> 4 B 3 0 3.0
> 5 B 2 1 0.0
> 6 C 6 0 7.0
> 7 C 2 0 7.0
> 8 C 6 0 7.0
I would use ave for computing mean for combination of V1 and F1 and then I
put all values of F1_mean for which F1 is 1 to 0
test$F1_mean <- ave(test$V2, test$V1, factor(test$F1), FUN = mean)
test$F1_mean[test$F1==1] <- 0
Regards
Petr
>
> Thank you for any help!
>
> Patrick Hausmann
>
> ______________________________________________
> R-help at 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.
More information about the R-help
mailing list