Cadena dividida por delimitador en R

Lasha Khintibidze 20 noviembre 2021 16 julio 2021
  1. Utilice strsplit para dividir cadena por delimitador en R
  2. Utilice str_split para dividir la cadena por delimitador en R
Cadena dividida por delimitador en R

Este artículo discutirá cómo dividir cadenas por delimitadores en R.

Utilice strsplit para dividir cadena por delimitador en R

strsplit se proporciona con la biblioteca base de R y debería estar disponible en la mayoría de las instalaciones sin paquetes adicionales. strsplit divide el vector de caracteres en subcadenas por el delimitador dado, que también se proporciona con un vector de caracteres. El primer argumento de la función es el vector de caracteres que se va a dividir. En este caso, especificamos el carácter de espacio para separar cada palabra en la oración dada. Tenga en cuenta que la salida se proporciona como una lista de vectores de caracteres.

library(dplyr)
library(stringr)

str <- "Lorem Ipsum is simply dummied text of the printing and typesetting industry."

strsplit(str, " ")

Producción:

> strsplit(str, " ")
[[1]]
 [1] "Lorem"       "Ipsum"       "is"          "simply"      "dummied"       "text"       
 [7] "of"          "the"         "printing"    "and"         "typesetting" "industry."  

Utilice str_split para dividir la cadena por delimitador en R

Alternativamente, la función str_split también se puede utilizar para dividir cadenas por delimitadores. str_split es parte del paquete stringr. Casi funciona de la misma manera que strsplit, excepto que str_split también toma expresiones regulares como patrón. En el siguiente ejemplo, solo pasamos la cadena fija para que coincida. Tenga en cuenta que la función puede tomar opcionalmente el tercer argumento, que denota el número de subcadenas a devolver.

library(dplyr)
library(stringr)

str <- "Lorem Ipsum is simply dummied text of the printing and typesetting industry."

str_split(str, " ")

Producción:

> str_split(str, " ")
[[1]]
 [1] "Lorem"       "Ipsum"       "is"          "simply"      "dummied"       "text"       
 [7] "of"          "the"         "printing"    "and"         "typesetting" "industry."  

Otro parámetro opcional en la función str_split es simplify, que ocupa el cuarto lugar. Este parámetro tiene el valor de FALSE por defecto, y esto obliga a la función a devolver subcadenas como una lista de vectores de caracteres. Si asignamos TRUE al argumento dado, str_split devuelve un array de caracteres.

library(dplyr)
library(stringr)

fruits <- c(
  "apples and oranges and pears and bananas",
  "pineapples and mangos and raspberries"
)

str_split(fruits, " and ")
str_split(fruits, " and ", simplify = TRUE)

Producción:

> str_split(fruits, " and ")
[[1]]
[1] "apples"  "oranges" "pears"   "bananas"

[[2]]
[1] "pineapples"  "mangos"      "raspberries"


> str_split(fruits, " and ", simplify = TRUE)
     [,1]         [,2]      [,3]          [,4]     
[1,] "apples"     "oranges" "pears"       "bananas"
[2,] "pineapples" "mangos"  "raspberries" ""

Artículo relacionado - R String