Datentypen
Nun wollen wir uns mit den verschiedenen Datentypen beschäfitgen. Daten können nicht nur numerisch sein, sondern auch als Klassifikationen bzw. Gruppen auftreten (z.B. Klassifikation der gastrointestinalen Blutung nach Forrest etc.) oder für jede Beobachtung einzigartig sein (z.B. Name des Patienten, etc.).
Grundlegende Datentypen
Die grundlegenden Datentypen in R sind:
- numeric – Beispiel: 7.7
- integer – Beispiel: 3L
- factor – Beispiel: “positiv” und “negativ”
- character – Beispiel: “Sabine”, “Peter”, etc.
Bei den integer-Daten handelt es sich um ganze Zahlen. Sie werden von R mit einem großen L hinter dem Wert gekennzeichnet. Integer benötigen wir z.B. bei Indices etc.
Daten die nicht numerisch sind, werden auch als strings bezeichnet. Diese Daten müssen in R in Anführungszeichen gesetzt werden. Hierbei unterscheidet man factor und character. Diese Unterscheidung werden wir aber noch häufig in den kommenden Sessions betrachten.
Abfrage des Datentyps
R liefert uns verschiedenen Funktionen, um den Datentyp unserer Variable abzufragen. Die wichtigste Funktion ist hierbei die class()-Funktion:
class(3)
## [1] "numeric"
class("Peter")
## [1] "character"
Die class()-Funktion liefert uns also den Datentyp unserer Variable. Wollen wir aber einen Booleschen Wert erhalten, also ob eine Variable z.B. numerisch ist oder eben nicht, so gibt es folgende Funktionen in R:
is.numeric(3)
## [1] TRUE
is.numeric("Peter")
## [1] FALSE
Dieselbe Abfrage gibt es auch für die anderen Datentypen:
- is.integer()
- is.factor()
- is.character()
Umwandlung von Datentypen
Wir können die verschiedenen Datentypen auch ineinander umwandeln. Hier ein Beispiel:
a <- 7
is.integer(a)
## [1] FALSE
a <- as.integer(a)
is.integer(a)
## [1] TRUE
Mit dieser Codefolge haben wir uns zuerst eine Variable a, welche einen numerischen Wert enthält, erstellt. Fragen wir ab, ob es sich um einen integer-Typ handelt, so erhalten wir die Antwort FALSE. Mit der Funktione as.integer() wandeln wir den numerischen Typ unserer Variable in einen integer Typ um. Die erneute Abfrage ergibt dann die Antwort TRUE.
Auch diese Funktion gibt es für alle Datentypen:
- as.numeric()
- as.factor()
- as.character()
Nun kennen wir die Datentypen in R und können in der nächsten Session die Datenformen behandeln.