3.11 Datentypen in R

3.11.1 Vektoren

Datentypen sind ein seltsames Konzept, wenn man noch nicht programmiert hat. Datentypen sagen, in welcher Art Daten vorliegen. Hier ein Beispiel: R hat den Datentyp Vector. Vektoren sind eine Sammlung mehrerer Werte, die in einer Gruppe gespeichert werden:

## [1] 3 4 5
## [1] "3"     "hallo" "3.5"
## [1] 9

Wir sind vorhin bereits Vektoren begegnet, als wir die Wurzel aus 9 berechnet haben:

## [1] 3

Jede einzelne Zahl ist bereits ein Vektor, eben ein Vektor mit nur einem Element. Vektoren enthalten gewöhnlich die gleiche Art von Daten:

## [1] 3 3 4

Es ist dennoch möglich, verschiedene Dateiarten in einen Vektor zu schreiben. Diese Vektoren nennen wir nicht-atomare gemischte Vektoren. Wir werden diese in diesem Kurs nicht benötigen.

## [1] "3"     "hallo"

Die Werte in Vektoren können in unterschiedlichen Formen (z.B. als Text oder Zahlen) vorliegen:

## [1] "Ich"      "bin"      "ein"      "Berliner"
## [1] 3 4 5 6
## [1] 4.1 4.0 6.8
## [1]  TRUE FALSE  TRUE

Diese verschiedenen Vektorformen kannst du in einem Datensatz erkennen, indem du einen Datensatz mit der Funktion glimpse betrachtest:

## Observations: 1,470
## Variables: 17
## $ id                         <dbl> 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12…
## $ age                        <dbl> 41, 49, 37, 33, 27, 32, 59, 30, 38, 3…
## $ department                 <chr> "Sales", "Research & Development", "R…
## $ distance_from_home         <dbl> 1, 8, 2, 3, 2, 2, 3, 24, 23, 27, 16, …
## $ education                  <chr> "College", "Below College", "College"…
## $ employee_count             <dbl> 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1…
## $ gender                     <chr> "Female", "Male", "Male", "Female", "…
## $ job_role                   <chr> "Sales Executive", "Research Scientis…
## $ job_satisfaction           <chr> "Very High", "Medium", "High", "High"…
## $ marital_status             <chr> "Single", "Married", "Single", "Marri…
## $ monthly_income             <dbl> 5993, 5130, 2090, 2909, 3468, 3068, 2…
## $ num_companies_worked       <dbl> 8, 1, 6, 1, 9, 0, 4, 1, 0, 6, 0, 0, 1…
## $ performance_rating         <chr> "Excellent", "Outstanding", "Excellen…
## $ total_working_years        <dbl> 8, 10, 7, 8, 6, 8, 12, 1, 10, 17, 6, …
## $ work_life_balance          <chr> "Bad", "Better", "Better", "Better", …
## $ years_at_company           <dbl> 6, 10, 0, 8, 2, 7, 1, 1, 9, 7, 5, 9, …
## $ years_since_last_promotion <dbl> 0, 1, 0, 3, 2, 3, 0, 0, 1, 7, 0, 0, 4…

Du siehst beispielsweise, dass die Variable education als chr, das bedeutet als Text gespeichert ist. Folgende Vektoren liegen in der Regel in einem Datensatz vor:

  • dbl: Zahlen mit Nachkommastellen
  • chr: Text mit " umrundet
  • fct: Faktoren. Mehr Informationen dazu findest du im Modul einfaktorielle Varianzanalyse
  • lgl: Logischer Vektor mit Wahr- und Falschaussagen: TRUE und FALSE

Vektoren sind der grundlegende Datentyp aus dem andere Datentypen entstehen. Beispielsweise sind Dataframes nur besondere Arten von Vektoren.

3.11.2 Dataframes

Dataframes sind diejenigen Datentypen, mit denen wir uns am meisten beschäftigen werden. Dataframes sind Daten, welche in einem Excel-ähnlichem Format vorliegen:

Wir können auf einzelne Variablen eines Dataframes zugreifen, indem wir den $-Operator verwenden:

Dieser Operator ist wichtig, um beispielsweise den Mittelwert einer Variablen zu berechnen, da die Funktion mean als Argument eine Variable bzw. einen Vektor erwartet:

## [1] 2.666667

Das gleiche gilt für die Funktion sd, mit welcher wir die Standardabweichung einer Variablen berechnen können:

## [1] 1.527525