Dividi stringa per delimitatore in R

Jinku Hu 16 luglio 2021
  1. Usa strsplit per dividere la stringa in base al delimitatore in R
  2. Usa str_split per dividere la stringa per delimitatore in R
Dividi stringa per delimitatore in R

Questo articolo discuterà come dividere la stringa per delimitatore in R.

Usa strsplit per dividere la stringa in base al delimitatore in R

strsplit è fornito con la libreria di base R e dovrebbe essere disponibile sulla maggior parte delle installazioni senza pacchetti aggiuntivi. strsplit divide il vettore di caratteri in sottostringhe in base al delimitatore dato, che è fornito anche di un vettore di caratteri. Il primo argomento della funzione è il vettore di caratteri da suddividere. In questo caso, specifichiamo il carattere spazio per separare ogni parola nella frase data. Nota che l’output è dato come un elenco di vettori di caratteri.

library(dplyr)
library(stringr)

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

strsplit(str, " ")

Produzione:

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

Usa str_split per dividere la stringa per delimitatore in R

In alternativa, la funzione str_split può essere utilizzata anche per dividere la stringa per delimitatore. str_split fa parte del pacchetto stringr. Funziona quasi allo stesso modo di strsplit, tranne per il fatto che anche str_split accetta espressioni regolari come pattern. Nell’esempio seguente, passiamo solo la stringa fissa per la corrispondenza. Nota che la funzione può facoltativamente prendere il terzo argomento, che denota il numero di sottostringhe da restituire.

library(dplyr)
library(stringr)

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

str_split(str, " ")

Produzione:

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

Un altro parametro opzionale nella funzione str_split è simplify, che si trova al quarto posto. Questo parametro ha il valore FALSE per impostazione predefinita, e questo forza la funzione a restituire le sottostringhe come un elenco di vettori di caratteri. Se assegniamo TRUE all’argomento dato, str_split restituisce una matrice di caratteri.

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)

Produzione:

> 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" ""
Autore: Jinku Hu
Jinku Hu avatar Jinku Hu avatar

Founder of DelftStack.com. Jinku has worked in the robotics and automotive industries for over 8 years. He sharpened his coding skills when he needed to do the automatic testing, data collection from remote servers and report creation from the endurance test. He is from an electrical/electronics engineering background but has expanded his interest to embedded electronics, embedded programming and front-/back-end programming.

LinkedIn Facebook

Articolo correlato - R String