Pakete mit Funktionen für Characters sind unter anderem base
, gsubfn
und Hmisc
. Hier einige nützliche Funktionen.
-
Paket
base
:Ist das ein Character?
is.character("Das ist ein Character.")
[1] TRUEAnzahl der Zeichen
nchar("Das ist ein Character.")
[1] 22Character trennen anhand einer Trennzeichenfolge
strsplit(c("Das ist","ein Character."),split=" ")
[[1]]
[1] "Das" "ist"
[[2]]
[1] "ein" "Character."
Character verbinden anhand einer Trennzeichenfolge
paste("Das","ist","ist","ein","Character.",sep=" ")
[1] "Das ist ist ein Character."
paste("Das","ist",sep="Trennzeichenfolge")
[1] "DasTrennzeichenfolgeist"die ersten n = 5 Zeichen eines Characters
strtrim(c("Das ist","ein Character."),width=5)
[1] "Das i" "ein C"von Zeichen i = 2 bis Zeichen j = 6 eines Characters
substr(c("Das ist","ein Character."),2,6)
[1] "as is" "in Ch"Characters in Kleinbuchstaben oder Großbuchstaben verwandeln
tolower(c("Das ist","ein Character."))
[1] "das ist" "ein character."
toupper(c("Das ist","ein Character."))
[1] "DAS IST" "EIN CHARACTER."
casefold(c("Das ist","ein Character."),upper=FALSE)
[1] "das ist" "ein character."eine einzelne Zeichenfolge von einem Character austauschen
chartr(old="a",new="A",c("Das ist","ein Character."))
[1] "DAs ist" "ein ChArActer."bestimmte Zeichen mittels eines Pattern von einem Character austauschen
gsub("[A-Z]+","_","dgG33.2JdfgGHHJG54:79HGFff,8F")
[1] "dg_33.2_dfg_54:79_ff,8_"Genaueres über Pattern in R findet man unter [1].
-
Paket
gsubfn
:bestimmte Zeichenfolgen mittels eines Pattern [1] in einem Character finden
strapply("dgG33.2JdfgGHHJG54:79HGFff,8F","\\.")
[[1]]
[1] "."
strapply("dgG33.2JdfgGHHJG54:79HGFff,8F","\\..")
[[1]]
[1] ".2"
strapply("dgG33.2JdfgGHHJG54:79HGFff,8F","\\..*")
[[1]]
[1] ".2JdfgGHHJG54:79HGFff,8F"
strapply("dgG33.2JdfgGHHJG54:79HGFff,8F","\\..*:")
[[1]]
[1] ".2JdfgGHHJG54:"
strapply("dgG33.2JdfgGHHJG54:79HGFff,8F","\\.[^:]*")
[[1]]
[1] ".2JdfgGHHJG54"
strapply("12;3,5,6.245,22.1;32.1","[[:digit:]]+")
[[1]]
[1] "12" "3" "5" "6" "245" "22" "1" "32" "1"
strapply("12;3,5,6.245,22.1;32.1","[0-9]+")
[[1]]
[1] "12" "3" "5" "6" "245" "22" "1" "32" "1"
strapply("1d,fvhEilO46f6,.0h","[a-z]+")
[[1]]
[1] "d" "fvh" "il" "f" "h"
strapply("1d,fvhEilO46f6,.0h","[a-z]")
[[1]]
[1] "d" "f" "v" "h" "i" "l" "f" "h"
strapply("1d,fvhEilO46f6,.0h","[^A-Z]+")
[[1]]
[1] "1d,fvh" "il" "46f6,.0h"
strapply("1d,fvhEilO46f6,.0h","[a-zA-Z]")
[[1]]
[1] "d" "f" "v" "h" "E" "i" "l" "O" "f" "h"
strapply("1736292650284","[0-9]{3}")
[[1]]
[1] "173" "629" "265" "028"eine weitere Möglichkeit mit der Funktion
strapply()
strapply("sdhgdsjkeiasghshhf","[a-z]",function(x){if(x=="h"){return(1)}})
[[1]]
[1] 1 1 1 1 -
Paket
Hmisc
:den Anfangbuchstaben eines Characters als Großbuchstabe
capitalize(c("das","ding"))
[1] "Das" "Ding"Variablen in Character wandeln
Cs(Haus,Maus)
[1] "Haus" "Maus"das erste Wort eines Characters
first.word("Das Ding")
[1] "Das"
Quellen: | |
[1] | Regular Expressions as used in R R: help(regex) bzw. ?regex Zugriff: 27.6.2009 |
[2] | gsubfn, reference manual http://cran.r-project.org/web/packages/gsubfn/index.html Zugriff: 27.6.2009 |
[3] | Hmisc, reference manual http://cran.r-project.org/web/packages/Hmisc/index.html Zugriff: 27.6.2009 |
6.7.2009 (R: 2.9.0)