[R] sum of grouped elements of vector
Chel Hee Lee
chl948 at mail.usask.ca
Fri Jan 23 15:42:35 CET 2015
Here is some examples using functions 'tapply()' as suggested by Bert
Gunter in the previous post, 'aggregate()', and 'xtabs()'. Note that
'grp.id' means 'group indicator'.
> a <- c(1,2,3,4,5,6,7,8)
> new1 <- c(1+2, 3, 4+5+6, 7+8)
> new1
[1] 3 3 15 15
>
> grp.id <- c(1,1, 2, 3,3,3, 4,4)
> tapply(X=a, INDEX=grp.id, FUN=sum)
1 2 3 4
3 3 15 15
> aggregate(x=a, by=list(grp.id), FUN=sum)
Group.1 x
1 1 3
2 2 3
3 3 15
4 4 15
> xtabs(formula=a~grp.id)
grp.id
1 2 3 4
3 3 15 15
>
>
I hope this helps.
Chel Hee Lee
On 1/23/2015 3:32 AM, Bert Gunter wrote:
> If Jim's answer is not what you want, then I would say it is because
> your question is too vague to be answered. In particular, how do you
> specify the elements of the vector that are to be summed to create the
> new vectors? ?tapply might then be relevant here, but that's just a
> guess.
>
> -- Bert
>
>
>
>
>
> Bert Gunter
> Genentech Nonclinical Biostatistics
> (650) 467-7374
>
> "Data is not information. Information is not knowledge. And knowledge
> is certainly not wisdom."
> Clifford Stoll
>
>
>
>
> On Fri, Jan 23, 2015 at 12:45 AM, Kathryn Lord
> <kathryn.lord2000 at gmail.com> wrote:
>> Dear R users,
>>
>> I have a quick quesiton.
>>
>> Here is a vector "a".
>>
>> a<- c(1,2,3,4,5,6,7,8).
>>
>> (In fact, I have a huge vector.)
>>
>>
>> With "a", I'd like to create new vectors, for example,
>>
>> new1 = (1+2, 3, 4+5+6, 7+8)
>> new2 = (1, 2+3+4+5+6+7, 8)
>> new3 = (1+2+3+4+5+6+7, 8)
>>
>>
>> How could I make the above vectors using R?
>>
>>
>> Any suggestion will be greatly appreciated.
>>
>> Best,
>>
>> Kathryn Lord
>>
>> [[alternative HTML version deleted]]
>>
>> ______________________________________________
>> R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see
>> 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.
>
> ______________________________________________
> R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see
> 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