Mostrando entradas con la etiqueta ggrepl. Mostrar todas las entradas
Mostrando entradas con la etiqueta ggrepl. Mostrar todas las entradas

2020-10-07

Filter rows containing a certain string in R

Title

Problem

We want to filter rows containing a certain string in R. In our example, rows containing the string 'foo'.

foo <- data.frame(Company = c("company1", "foo", "test", "food"), Metric = rnorm(4, 10))

   Company    Metric
1 company1  7.590178
2      foo  9.711493
3     test 10.862799
4     food  9.337434

Solution

  • dplyr
  • Using the grepl function inside filter.

    library(dplyr)
    filter(foo, grepl("foo", Company))
    

      Company   Metric
    1     foo 9.711493
    2    food 9.337434
    
  • data.table
  • Another options is the function like from data.table with a similar syntax to SQL.

    library(data.table)
    DT <- data.table(foo)
    DT[Company %like% 'foo']
    
       Company   Metric
    1:     foo 9.711493
    2:    food 9.337434
    

    References

    Filtrar filas que contengan una cadena de texto en R

    Title

    Problema

    Queremos filtrar las filas de un data frame que contengan una determinada cadena de texto. En nuestro ejemplo las filas que contengan la cadena 'foo'.

    foo <- data.frame(Company = c("company1", "foo", "test", "food"), Metric = rnorm(4, 10))
    

       Company    Metric
    1 company1  7.590178
    2      foo  9.711493
    3     test 10.862799
    4     food  9.337434
    

    Solución

  • dplyr
  • Usamos la función grepl dentro de filter.

    library(dplyr)
    filter(foo, grepl("foo", Company))
    

      Company   Metric
    1     foo 9.711493
    2    food 9.337434
    
  • data.table
  • Otra opción sería usar la función like de data.table, con una sintaxis similar a SQL.

    library(data.table)
    DT <- data.table(foo)
    DT[Company %like% 'foo']
    
       Company   Metric
    1:     foo 9.711493
    2:    food 9.337434
    

    Referencias

    Nube de datos