[R] dplyr : row total for all groups in dplyr summarise

maicel at infomed.sld.cu maicel at infomed.sld.cu
Tue Jul 5 13:47:05 CEST 2016


Sorry, what I wanted to do was to add a total row at the end of the  
summary. The marginal totals by columns correspond to 100% and the sum  
of levels.
best reagard
Maicel Monzon


Ulrik Stervbo <ulrik.stervbo en gmail.com> escribió:

> Yes. But in the sample code the data is summarised. In which case you get 4
> rows and not the correct 32.
>
> On Tue, 5 Jul 2016, 07:48 David Winsemius, <dwinsemius en comcast.net> wrote:
>
>> nrow(mtcars)
>>
>>
>> Sent from my iPhone
>>
>> On Jul 4, 2016, at 9:03 PM, Ulrik Stervbo <ulrik.stervbo en gmail.com> wrote:
>>
>> That will give you the wrong result when used on summarised data
>>
>> David Winsemius <dwinsemius en comcast.net> schrieb am Di., 5. Juli 2016
>> 02:10:
>>
>>> I thought there was an nrow() function?
>>>
>>> Sent from my iPhone
>>>
>>> On Jul 4, 2016, at 9:59 AM, Ulrik Stervbo <ulrik.stervbo en gmail.com>
>>> wrote:
>>>
>>> If you want the total number of rows in the original data.frame after
>>> counting the rows in each group, you can ungroup and sum the row counts,
>>> like:
>>>
>>> library("dplyr")
>>>
>>>
>>> mtcars %>%
>>>    group_by (am, gear) %>%
>>>    summarise (n=n()) %>%
>>>    mutate(rel.freq = paste0(round(100 * n/sum(n), 0), "%")) %>%
>>>    ungroup() %>%
>>>    mutate(row.tot = sum(n))
>>>
>>> HTH
>>> Ulrik
>>>
>>> On Mon, 4 Jul 2016 at 18:23 David Winsemius <dwinsemius en comcast.net>
>>> wrote:
>>>
>>>>
>>>> > On Jul 4, 2016, at 6:56 AM, maicel en infomed.sld.cu wrote:
>>>> >
>>>> > Hello,
>>>> > How can I aggregate row total for all groups in dplyr summarise ?
>>>>
>>>> Row total ? of what? Aggregate ? how? What is the desired answer?
>>>>
>>>>
>>>>
>>>> > library(dplyr)
>>>> > mtcars %>%
>>>> >  group_by (am, gear) %>%
>>>> >  summarise (n=n()) %>%
>>>> >  mutate(rel.freq = paste0(round(100 * n/sum(n), 0), "%"))
>>>> >
>>>> > best regard
>>>> > Maicel Monzon
>>>> >
>>>> >
>>>> >
>>>> > ----------------------------------------------------------------
>>>> >
>>>> >
>>>> >
>>>> >
>>>> > --
>>>> > Este mensaje le ha llegado mediante el servicio de correo electronico
>>>> que ofrece Infomed para respaldar el cumplimiento de las misiones del
>>>> Sistema Nacional de Salud. La persona que envia este correo asume el
>>>> compromiso de usar el servicio a tales fines y cumplir con las  
>>>> regulaciones
>>>> establecidas
>>>> >
>>>> > Infomed: http://www.sld.cu/
>>>> >
>>>> > ______________________________________________
>>>> > R-help en 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 en 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.
>>>
>>>
>



----------------------------------------------------------------




--
Este mensaje le ha llegado mediante el servicio de correo electronico que ofrece Infomed para respaldar el cumplimiento de las misiones del Sistema Nacional de Salud. La persona que envia este correo asume el compromiso de usar el servicio a tales fines y cumplir con las regulaciones establecidas

Infomed: http://www.sld.cu/



More information about the R-help mailing list