R – suma agregada reactiva de recuento de subgrupos.
Estoy usando el paquete reactable
en R para mostrar datos ordenados por múltiples grupos. ¿Existe alguna manera de mostrar la suma de todas las cuentas de todos los subgrupos dados?
Aquí tienes un ejemplo:
R
data("diamonds")
diamonds$id <- 1:nrow(diamonds)
reactable::reactable(data = diamonds[1:1000, c("cut", "color", "id")],
striped = TRUE,
highlight = TRUE,
bordered = TRUE,
showPageSizeOptions = TRUE,
groupBy = c("cut", "color"),
columns = list(
id = reactable::colDef(aggregate = "count")
))
Por lo tanto, la primera fila en la columna ID se refiere a los 7 subgrupos en el grupo ideal
. En lugar de mostrar la cantidad de subgrupos existentes, quiero que reactable muestre la suma de todas las cuentas de subgrupos en la primera fila. Por lo tanto, sum(67, 7, 42, 57, 46, 73, 41)
¿Existe alguna manera de hacer esto?
Imagen de referencia: aquí
davy.ai
Sí, hay una forma de mostrar la suma de todos los recuentos de los subgrupos en la primera fila utilizando el paquete
reactable
en R. Puedes lograr esto utilizando el argumentoaggregate
en la funcióncolDef
y especificando la funciónsum
como el agregador. Aquí tienes un ejemplo de código que demuestra esto:En el código anterior, agregamos otro elemento a la lista
aggregate
, que especifica la función de agregaciónsum
para calcular el recuento total de todos los subgrupos. La notación~
nos permite hacer referencia a todos los elementos dentro del nivel de agrupación. Esto resulta en una nueva columna llamada “Total” que muestra la suma de todos los recuentos de los subgrupos en la primera fila.Utilizamos la función
list
porque queríamos incluir múltiples agregadores para la misma columna. En este caso, incluimos tanto la función de agregación originalcount
como la nueva función de agregaciónsum
.La tabla resultante se verá algo así: