Sök…


Syntax

  • strsplit (
  • x
  • dela
  • fast = FALSE
  • perl = FALSE
  • useBytes = FALSE)

Introduktion

strsplit är en användbar funktion för att dela upp en vektor i en lista på ett teckenmönster. Med typiska R-verktyg kan hela listan återinföras till en data.frame eller del av listan kan användas i en grafövning.

Här är en vanlig användning av strsplit : bryt en teckenvektor längs en kommaavskiljare:

temp <- c("this,that,other", "hat,scarf,food", "woman,man,child")
# get a list split by commas
myList <- strsplit(temp, split=",")
# print myList
myList
[[1]]
[1] "this"  "that"  "other"

[[2]]
[1] "hat"   "scarf" "food" 

[[3]]
[1] "woman" "man"   "child"

Som antyds ovan är det delade argumentet inte begränsat till tecken, utan kan följa ett mönster dikterat av ett regelbundet uttryck. Till exempel är temp2 identisk med tempen ovan förutom att separatorerna har ändrats för varje objekt. Vi kan dra fördel av det faktum att splittringsargumentet accepterar regelbundna uttryck för att lindra oregelbundenheten i vektorn.

temp2 <- c("this, that, other", "hat,scarf ,food", "woman; man ; child")
myList2 <- strsplit(temp2, split=" ?[,;] ?")
myList2
[[1]]
[1] "this"  "that"  "other"

[[2]]
[1] "hat"   "scarf" "food" 

[[3]]
[1] "woman" "man"   "child"

Anmärkningar :

  1. att bryta ner syntaxen för det vanliga uttrycket ligger inte inom ramen för detta exempel.
  2. Ibland kan matchning av vanliga uttryck sakta ner en process. Liksom med många R-funktioner som tillåter användning av reguljära uttryck, är det fasta argumentet tillgängligt för att säga R att matcha bokstäverna bokstavligen.


Modified text is an extract of the original Stack Overflow Documentation
Licensierat under CC BY-SA 3.0
Inte anslutet till Stack Overflow