[R] Merging by() results back into original data frame?

ivo welch ivo.welch at gmail.com
Tue Mar 22 00:11:31 CET 2011


thank you, william and bill.  wow, this was fast.  I have been tearing
my hair out over this one, trying to work the wrong tool.  (this would
make a good "see also" in the "by" function.)
----
Ivo Welch (ivo.welch at brown.edu, ivo.welch at gmail.com)




On Mon, Mar 21, 2011 at 7:09 PM, William Dunlap <wdunlap at tibco.com> wrote:
>> -----Original Message-----
>> From: r-help-bounces at r-project.org
>> [mailto:r-help-bounces at r-project.org] On Behalf Of ivo welch
>> Sent: Monday, March 21, 2011 3:43 PM
>> To: r-help
>> Subject: [R] Merging by() results back into original data frame?
>>
>> dear R experts---I am trying to figure out what the recommended way is
>> to merge by() results back into the original data frame.  for example,
>> I want to have a flag that tells me whether a particular row contains
>> the maximum for its group.
>>
>>   d <- data.frame(group=as.factor(rep(1:3,each=3)), val=rnorm(9))
>
> ave() could do what you want without using by().  E.g.,
>
>  > d$isGroupMax <- with(d, ave(val, group, FUN=max) == val)
>  > d
>   group         val isGroupMax
>  1     1  0.21496662      FALSE
>  2     1 -1.44767939      FALSE
>  3     1  0.39635971       TRUE
>  4     2  0.60235172      FALSE
>  5     2  0.94581401       TRUE
>  6     2  0.01665084      FALSE
>  7     3 -0.58277312      FALSE
>  8     3  0.82930370      FALSE
>  9     3  1.02906920       TRUE
>
> Bill Dunlap
> Spotfire, TIBCO Software
> wdunlap tibco.com
>
>>   highestvals <- by( d, d$group, function(d)(max(d$val)) )
>>
>>   ## and now?  iterate over levels( d$group ) ?  how do I merge
>> highestvals back into d?
>>
>> advice appreciated.
>>
>> sincerely,
>>
>> /iaw
>> ----
>> Ivo Welch (ivo.welch at brown.edu, ivo.welch at gmail.com)
>>
>> ______________________________________________
>> 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