Een vector van strings in r samenvoegen (met voorbeelden)
U kunt een van de volgende methoden in R gebruiken om een vector van tekenreeksen aan elkaar te koppelen:
Methode 1: Gebruik paste() in Base R
paste(vector_of_strings, collapse=' ')
Methode 2: Gebruik stri_paste() uit het stringi-pakket
library (stringi)
stri_paste(vector_of_strings, collapse=' ')
Beide methoden zullen hetzelfde resultaat opleveren, maar de methode stri_paste() zal sneller zijn, vooral als u met extreem grote vectoren werkt.
De volgende voorbeelden laten zien hoe u elke methode in de praktijk kunt gebruiken.
Voorbeeld 1: Voeg een vector van tekenreeksen samen met paste() in Base R
De volgende code laat zien hoe u een vector van tekenreeksen aaneenschakelt met behulp van de R base paste() functie:
#create vector of strings
vector_of_strings <- c('This', 'is', 'a', 'vector', 'of', 'strings')
#concatenate strings
paste(vector_of_strings, collapse=' ')
[1] "This is a vector of strings"
Houd er rekening mee dat het reduce- argument het scheidingsteken specificeert dat tussen elke tekenreeks moet worden geplaatst.
In het bovenstaande voorbeeld hebben we een spatie gebruikt. We kunnen echter elk scheidingsteken gebruiken, zoals een koppelteken:
#create vector of strings
vector_of_strings <- c('This', 'is', 'a', 'vector', 'of', 'strings')
#concatenate strings using dash as delimiter
paste(vector_of_strings, collapse='-')
[1] “This-is-a-vector-of-strings”
We kunnen zelfs helemaal geen scheidingstekens gebruiken als we willen dat alle tekenreeksen worden samengevoegd zonder spaties ertussen:
#create vector of strings
vector_of_strings <- c('This', 'is', 'a', 'vector', 'of', 'strings')
#concatenate strings using no delimiter
paste(vector_of_strings, collapse='')
[1] “Thisisavectorofstrings”
Voorbeeld 2: Voeg een vector van strings samen met str_paste() uit het stringi-pakket
De volgende code laat zien hoe je een vector van tekenreeksen aaneenschakelt met behulp van de functie stri_paste() uit het stringi- pakket in R:
library (stringi)
#create vector of strings
vector_of_strings <- c('This', 'is', 'a', 'vector', 'of', 'strings')
#concatenate strings
stri_paste(vector_of_strings, collapse=' ')
[1] "This is a vector of strings"
Merk op dat dit hetzelfde resultaat oplevert als de basis-R paste() -functie.
Het enige verschil is dat deze methode sneller zal zijn.
Afhankelijk van de grootte van de stringvectoren waarmee u werkt, kan het snelheidsverschil voor u wel of niet van belang zijn.
Aanvullende bronnen
In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende bewerkingen in R kunt uitvoeren:
Hoe vector naar string te converteren in R
Hoe tekenreeksen naar kleine letters te converteren in R
Hoe gedeeltelijke stringmatching uit te voeren in R