Cómo filtrar filas que contienen una determinada cadena usando dplyr

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

A menudo, es posible que desee filtrar filas en un marco de datos en R que contienen una determinada cadena. Afortunadamente, esto es fácil de hacer usando la función filter () del paquete dplyr y la función grepl () en Base R.

Este tutorial muestra varios ejemplos de cómo utilizar estas funciones en la práctica utilizando el siguiente marco de datos:

#create marco de datos
df <- data.frame (player = c ('P Guard', 'S Guard', 'S Forward', 'P Forward', 'Center'),
                 puntos = c (12, 15, 19, 22, 32),
                 rebotes = c (5, 7, 7, 12, 11))

#ver marco de datos
 df

     rebotes de puntos de jugador
1 P Guardia 12 5
2 S Guardia 15 7
3 S Adelante 19 7
4 P Adelante 22 12
5 Centro 32 11

Ejemplo 1: Filtrar filas que contienen una determinada cadena

El siguiente código muestra cómo filtrar filas que contienen una determinada cadena:

#cargar biblioteca de paquetes
 dplyr (dplyr)

#filtrar filas que contienen la cadena 'Guard' en la columna del jugador 
df%>% filter ( grepl ('Guard', player))

   rebotes de puntos de jugador
1 P Guardia 12 5
2 S Guardia 15 7

Relacionado: Comparación de grep () frente a grepl () en R: ¿Cuál es la diferencia?

Ejemplo 2: Filtrar filas que contienen al menos una cadena

El siguiente código muestra cómo filtrar filas que contienen ‘Guardia’ o ‘Adelante’ en la columna del jugador:

#filtrar filas que contienen 'Guardia' o 'Adelante' en la columna del jugador 
df%>% filter ( grepl ('Guardia | Adelante', jugador))

     rebotes de puntos de jugador
1 P Guardia 12 5
2 S Guardia 15 7
3 S Adelante 19 7
4 P Adelante 22 12

El siguiente código muestra cómo filtrar filas que contienen ‘P’ o ‘Centro’ en la columna del reproductor:

#filtrar filas que contienen 'P' o 'Centro' en la columna del reproductor 
df%>% filter ( grepl ('P | Center', player))

     rebotes de puntos de jugador
1 P Guardia 12 5
2 P Adelante 22 12
3 Centro 32 11

Ejemplo 3: filtrar las filas que contienen una determinada cadena

El siguiente código muestra cómo filtrar (es decir, eliminar) filas que contienen ‘Guardia’ en la columna del jugador:

#filtrar filas que contienen 'Guardia' en la columna del jugador 
df%>% filter (! grepl ('Guardia', jugador))

     rebotes de puntos de jugador
1 S Adelante 19 7
2 P Adelante 22 12
3 Centro 32 11

El siguiente código muestra cómo filtrar (es decir, eliminar) filas que contienen ‘Guardia’ o ‘Centro’ en la columna del jugador:

#filtrar filas que contienen 'Guardia' o 'Centro' en la columna del jugador 
df%>% filter (! grepl ('Guardia | Centro', jugador))

     rebotes de puntos de jugador
1 S Adelante 19 7
2 P Adelante 22 12

Puede encontrar más tutoriales de R aquí .

  • 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

Se utiliza una prueba t de dos muestras para comprobar si las medias de dos poblaciones son iguales o no.…
statologos comunidad-2

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

You have Successfully Subscribed!