Cómo seleccionar la primera fila por grupo usando dplyr

Puedes opinar sobre este contenido:
  • 0
  • 0
  • 0
  • 0

Actualizado el 7 de mayo de 2021, por Luis Benites.

A menudo, es posible que desee seleccionar la primera fila de cada grupo usando el paquete dplyr en R. Puede usar la siguiente sintaxis básica para hacerlo:

df%>%
   group_by (group_var)%>%
   organizar (valores_var)%>%
   filter (row_number () == 1 )

El siguiente ejemplo muestra cómo utilizar esta función en la práctica.

Ejemplo: seleccione la primera fila por grupo en R

Supongamos que tenemos el siguiente conjunto de datos en R:

#create conjunto de datos
df <- data.frame (equipo = c ('A', 'A', 'A', 'B', 'B', 'B', 'C', 'C', 'C', 'C' ),
                 puntos = c (4, 9, 7, 7, 6, 13, 8, 8, 4, 17))

#ver conjunto de datos
 df

   puntos de equipo
1 A 4
2 A 9
3 A 7
4 B 7
5 B 6
6 B 13
7 C 8
8 C 8
9 C 4
10 C 17

El siguiente código muestra cómo usar el paquete dplyr para seleccionar la primera fila por grupo en R:

biblioteca (dplyr)

df%>%
  group_by (equipo)%>%
   organizar (puntos)%>%
   filter (número_fila () == 1 )

# A tibble: 3 x 2
# Grupos: equipo [3]
  puntos de equipo
    
1 A 4
2 C 4
3 B 6

De forma predeterminada, organizar () ordena los valores en orden ascendente, pero en su lugar podemos ordenar fácilmente los valores en orden descendente:

df%>%
   group_by (equipo)%>%
   organizar ( desc (puntos))%>%
   filter (número_fila () == 1 )

# A tibble: 3 x 2
# Grupos: equipo [3]
  puntos de equipo
    
1 C 17
2 B 13
3 A 9

Tenga en cuenta que puede modificar fácilmente este código para seleccionar la enésima fila de cada grupo. Simplemente cambie row_number () == n .

Por ejemplo, si desea seleccionar la segunda fila por grupo, puede usar la siguiente sintaxis:

df%>%
   group_by (equipo)%>%
   organizar ( desc (puntos))%>%
   filter (número_fila () == 2 )

O puede usar la siguiente sintaxis para seleccionar la última fila por grupo:

df%>%
   group_by (equipo)%>%
   organizar ( desc (puntos))%>%
   filter (número_fila () == n () )

Recursos adicionales

Cómo organizar filas en R
Cómo contar las observaciones por grupo en R
Cómo encontrar el valor máximo por grupo en R

  • https://r-project.org
  • https://www.python.org/
  • https://www.stata.com/

Redactor del artículo

  • Luis Benites
    Director de Statologos.com

    Tengo una Maestría en Ciencias en Estadística Aplicada y he trabajado en algoritmos de aprendizaje automático para empresas profesionales tanto en el sector de la salud como en el comercio minorista.

    Ver todas las entradas

¿Te hemos ayudado?

Ayudanos ahora tú, dejanos un comentario de agradecimiento, nos ayuda a motivarnos y si te es viable puedes hacer una donación:

La ayuda no cuesta nada

Por otro lado te rogamos que compartas nuestro sitio con tus amigos, compañeros de clase y colegas, la educación de calidad y gratuita debe ser difundida, recuerdalo:

Deja un comentario

La distribución multinomial describe la probabilidad de obtener un número específico de conteos para k resultados diferentes, cuando cada resultado…
statologos comunidad-2

Compartimos información EXCLUSIVA y GRATUITA solo para suscriptores (cursos privados, programas, consejos y mucho más)

You have Successfully Subscribed!