Wir haben in den letzten Kapiteln bereits die (atomaren) Datentypen logical, integer, double und character kennengelernt. An der Datentabelle nycflights sehen wir, dass es noch weitere Typen gibt. Wir wollen in diesem Kapitel ein wenig Struktur in die Datentypen bringen und die atomaren Datentypen von den zusammengesetzten Daten, die wir auch Datenstrukturen nennen, abgrenzen.
12.1 Atomare Datentypen
In der Tabelle 17.2 sind die sechs atomaren Datentypen mit den Kurznamen, wie sie in einem Tibble auftauchen, sowie Beispielen aufgeführt.
Tabelle 12.1: In R gibt es sechs verschiedene atomare Datentypen. Alle anderen Datentypen bzw. Datenstrukturen werden aus diesen zusammengesetzt. Der Typ raw ist nur der Vollständigkeit halber aufgeführt und wird im Wesentlichen nicht benötigt. Werte vom Typ raw sind nicht interpretierte Speicherwerte.
Name
Kurzname
Erklärung
Beispiele
raw
<raw>
Rohdaten (Byte-Darstellung) (selten!)
as.raw(255)
logical
<lgl>
Logischer Ausdruck
TRUE, T, FALSE, F
integer
<int>
ganze Zahlen
2, 4L, -7
double
<dbl>
Fließkommazahlen
1.2, pi, 3e-7
complex
<cpl>
Komplexe Zahlen
2+3i, 0-1i
character
<chr>
Zeichenketten
"Haus", "K2", "110_112"
Vektoren sind die zugrunde liegende Strukturform, in der Daten in R gespeichert werden. Mit der Funktion typeof() können wir bei einem R-Objekt den Datentyp herausfinden.
(Geordnete) Faktoren benötigt man immer dann, wenn es für ein Merkmal endlich viele bekannte und feste Ausprägungen, die Levels, gibt. Wir werden uns in Kapitel 15 noch damit beschäftigen.
Name
Kurzname
Erklärung
Beispiele
factor
<fct>
Kategoriale Merkmale mit festen Levels
"rot", "blau", "grün"
ordered
<ord>
Geordnete kategoriale Merkmale
"klein" < "mittel" < "groß"
12.3 Zeitbezogene Typen
Name
Kurzname
Erklärung
Beispiele
📅 date
<date>
Datum (ohne Zeit)
as.Date("2023-09-22")
⏰ datetime
<dttm>
Datum und Uhrzeit (POSIXct)
as.POSIXct("2025-10-21 11:20:00")
⏳ difftime
<difftime>
Zeitdifferenz zwischen zwei Daten/Zeitpunkten
difftime(Sys.time(), start)
📈 ts (time series)
<ts>
Zeitreihenobjekt mit fester Frequenz
ts(1:10, start=2020, freq=4)
12.4 Zusammengesetzte Datenstrukturen
Name
Kurzname
Erklärung
Beispiele
📚 list
<list>
Sammlung beliebiger Objekte (heterogen)
list(1, "a", TRUE)
🧮 matrix
<mtrx>
2D-Array gleichen Datentyps
matrix(1:6, ncol=2)
🧊 array
<arr>
Mehrdimensionale Datenstruktur gleichen Typs
array(1:8, dim=c(2,2,2))
📊 data.frame
<df>
Tabellarische Struktur mit Spalten unterschiedlichen Typs