Dezember 07, 2016

Übersicht – Heute

  • R und RStudio (ca. 30 Minuten)
  • Datentypen und Datenstrukturen (ca. 60 Minuten)
  • Indizierung von Daten (ca. 30 Minuten)
  • Ein Grundvokabular (ca. 30 Minuten)
  • Wichtige Begriffe und eine Abrundung (ca. 15 Minuten)

  • Ablauf: Kurze Informationsvermittlung (60 %) und eigene Arbeit (40 %)

1.1 R – was?

R – Was ist R?

  • R ist eine Sprache, eine Software und eine Philosophie
  • R is offen, frei, flexibel und transparent
  • R ist eine(s) der meistaktiven Sprachen/Programme

R – Was ist R, etwas formaler?

  • Freie Software für Statistik und Grafikerstellung
  • Open-source GNU-Projekt, basierend auf S (John Chambers)
  • Benutzbar über ein kommandozeilenbasiertes Interface
  • High-level, interpreted, functional, object-oriented

Everything that is called in R is a function.

Everything that is created in R is an object.

R – Was ist so gut an "free and open source"?

  • Abgesehen von den Kosten für proprietäre Software?
  • Viel größere Anzahl an Entwicklern (und Kontrolleuren)
  • Direkter Zugang zu Aktualiserungen/Änderungen
  • (Fast) keine lizenzrechtlichen Einschränkungen (GPL3)
  • Absolute Transparenz und Modifizierbarkeit

R – Was ist gemeint mit "flexibel"?

  • R kann genutzt werden für
    • Berechnungen und Grafikerstellung
    • Bild- und Tonmanipulation
    • Internet/Emailrecherchen
    • Erstellung von Berichten
    • Schreiben von Büchern
    • Erstellung von Präsentationen

R ist nicht MS Excel, weil…

  • man die Daten nicht explizit zu sehen bekommt,
  • man explizit schreibt, was zu tun ist,
  • man über Datenstrukturen nachdenken muss,
  • man fast die ganze Zeit Funktionen kombiniert,
  • man graphischen (nicht tabellarischen) Output erzeugt.
  • man fast gänzlich ohne die Maus auskommt.

  • R ist objekt-orientiert und vektor-basiert

R – Fragen und Übungen

  • Zeit: 5 Minuten, Art: globale Diskussion
    • Welche fünf Schlagworte beschreiben R am besten?
    • Was sind Vor- und Nachteile von "free and open software"?
    • Starten Sie RStudio, nutzen Sie R wie einen Taschenrechner
      • Berechnen Sie das Volumen einer Kugel mit 5 cm Radius
      • Berechnen Sie in R: die Wurzel des Quadrats des Kosinus einer Zahl

1.2 RStudio

RStudio – was?

  • RStudio ist eine graphische Benutzer- und Entwicklerumgebung für R
  • Zweite Haut für R, um effektiver arbeiten zu können
  • Ursrünglich Analogon zu Matlab-Interface, nun viel weitreichender
  • Spagat zwischen kommerzieller Software und Tool für R-community (RStudio commercial: "A commercial license for organizations not able to use AGPL software")

RStudio – der erste Blick

RStudio – Möglichkeiten

  • Programm für nahezu alle Betriebssysteme
  • Integration aller Werkzeuge für R in einem Programm
  • Unterstützung von mehreren Projekten
  • Unterstützung von Versionierungstools
  • Unterstützung interaktiver Grafiken
  • Erzeugung einer Vielzahl von Dokumenten

RStudio – Aufbau und Struktur

  • Vier Fenster
    • Skript-Fenster
    • Konsolen-Fenster
    • Variablen-Fenster
    • Multifunktions-Fenster
  • Größe und Inhalte können individuell modifiziert werden
  • RStudio ist html-basiert

RStudio – Unterstützung der Skripterstellung

  • "Die magischen Tasten: Tab, Pfeil hoch/runter und Enter"
  • Syntax-highlighting
  • Autovervollständigung
  • Autoeinrückung
  • Ausführung von Teilen und gesamten Skripten

RStudio – Das Variablenfenster

  • Darstellung aller Objekte (Variablen und Funktionen), die in der R-Session bestehen (Environment)
  • Anzeige des gesamten Verlaufs, Möglichkeit alle Kommandos erneut auszuführen (History)
  • Möglichkeit des Exports (und Imports) von Environment und History
  • optional weitere Elemente (Versionierung, Präsentationsvorschau etc.)

RStudio – Das Multifunktions-Fenster

  • Dateimanager
  • Plotfenster
  • Übersicht und Management der installierten Pakete (packages)
  • Hilfe
  • optional weitere Fenster

RStudio – Projekte erstellen

  • Projekte sind in sich geschlossene R-Sessions, mit allen Objekten, Workspaces, Packages, Skripten und Histories.
  • Erleichtern konsistentes Arbeiten und schnelle Wechsel zwischen Arbeits-Projekten.
  • Erstellung über Projects > New Project

RStudio – Weiterführende Informationen

RStudio – Fragen und Übungen

  • Zeit: 5 Minuten, Art: selbständige Übung
    • (Starten Sie RStudio)
    • Erstellen Sie ein neues Projekt ("R_Intro")
    • Erstellen Sie ein neues R-Skript
      • Erzeugen Sie eine Sequenz von Werten (x <- 1:10)
      • Übergeben Sie die Wurzel des Quadrats des Kosinus der Sequenz x an die Variable y
      • Inspizieren Sie Environment und History

Datentypen und Datenstrukturen

Datentypen – was?

  • Datentypen bestimmen, wie Werte behandelt werden und welche Operationen möglich sind
  • R unterstützt die üblichen und weitere Datentypen
  • Datentypen können begrenzt ineinander konvertiert werden
  • Datentypen folgen einen Hierarchie:

logical > integer > double > complex > character

  • Konvertierung in die andere Richtung erzeugt Datenverlust
  • Vgl. Skalenniveaus (nominal, ordinal, Intervall, Ratio)

Datentypen – Numeric

  • in R sind Integer oder Double automatisch Numeric
  • Integer-Werte sind numerische Werte ohne Dezimalstelle
  • Definition mit numeric()
  • Konvertierung mit as.numeric() (Achtung, Dezimalstelle wird abgeschnitten bei as.integer())
  • Abfrage mit is.numeric()
  • Generelle Abfrage des Datentyps mit typeof()

Datentypen – Complex

  • Komplexe Zahlen, enthalten einen imaginären und einen realen Teil
  • Extraktion der Teile mit Re() und Im()
  • Definition mit complex()
  • Konvertierung mit as.complex()
  • Abfrage mit is.complex()

Datentypen – Logical

  • Logische Werte, Daten, die nur zwei Werte annehmen können: TRUE (1) oder FALSE (0)
  • Üblicherweise das Ergebnis von logischen Operationen (Bool'sche Algebra)
  • Berechnungen sind möglich (0 und 1)
  • Definition mit logical()
  • Konvertierung mit as.logical()
  • Abfrage mit is.logical()

Datentypen – Character

  • Wörtlich sind "characters" einzelne Buchstaben, Zahlen, Symbole, Digits etc.
  • In R sind character-Werte Strings, alphanumerische Werte beliebiger Länge
  • character ist der offenste und begrenzteste Datentyp in R
  • Angabe über " "
  • Definition mit character()
  • Konvertierung mit as.character()
  • Abfrage mit is.character()

Datentypen – Time and Date

  • Zeit- und Datumswerte… sind ein weites Feld
  • In R sind Zeitwerte als POSIX (Portable Operating System Interface) definiert
  • POSIXct (ct calendar time) and POSIXlt (lt local time)
  • Numerische Angabe der Sekunden seit einem Stichtag: 1970-01-01 00:00:00 UTC
  • Definition und Umwandlung sind ein Kapitel für sich (as.POSIXct() und strptime())
  • Extraktion von Teilen des Datums mit format() oder strftime()

Datentypen – NA, NaN und NULL

  • Missing Values (Fehlwerte) haben den Wert NA (i.e., Typ logical), Test mit is.na()
  • Operationen mit nicht definiertem Ergebnis (z.B: 0 / 0) erzeugen den Typ NaN (Not a Number)
  • Das NULL-Objekt wird genutzt um zu beschreiben, dass ein Objekt nicht vorhanden ist. NULL hat keinen Datentyp und kann nicht konvertiert werden.

Datenstrukturen – was?

  • Bestimmt Organisation und Ansprache von Daten
  • Strukturen sind (bedingt) ineinander konvertierbar
  • Abfrage der Datenstruktur mit str()

Datenstrukturen – Vektor

  • Vektoren sind die simpelste Datenstruktur
  • Ein Objekt enthält m Werte, in einer Spalte (col) angeordnet
  • Vektoren sind also eindimensionale Strukturen (m:1)
  • Vektoren besitzen einen beliebigen aber konsistenten Datentyp
  • Erzeugung mit c() (combine) oder seq() (sequence)
  • Abfrage der Länge mit length()
  • Beispiele: c(1, 2, 3, 4:10), seq(from = 1, to = 10, by = 2), c(c(1, 2, 3), seq(4, 6), 7:10)

Datenstruktur – Matrix

  • Matrixobjekt hat m Zeilen (rows) und n Spalten (cols)
  • Matrizen sind zweidimensionale Objekte (m:n)
  • Matrizen besitzen einen beliebigen aber konsistenten Datentyp
  • Erzeugung mit matrix(data, nrow, ncol)
  • Erzeugung mit rbind() (row-bind) und cbind() (col-bind)
  • Konvertierung mit as.matrix()
  • Auflösung mit as.numeric() (oder as.character() etc.)

Datenstruktur – Matrix

  • Abfrage der Länge (i.e., Anzahl aller Werte) mit length()
  • Abfrage der Zeilen/Spaltenanzahl/Dimension: nrow(), ncol(), dim()
X <- matrix(data = 1:10, nrow = 2)
dim(X)
## [1] 2 5
nrow(X)
## [1] 2
  • Transponieren t(), Diagonale diag()
  • Erweiterung der Dimensionen führt zum Array (array(data, dim))

Datenstruktur – Data frame

  • Data frames sind die häufigste Datenstruktur in R
  • Bestehen aus Vektoren der gleichen Länge aber beliebigen Datentyps
  • Data frames sind zweidimensionale Objekte (m:n)
  • Spalten sollten einen Namen haben (zur Definition names())
  • Zeilen können auch einen Namen haben (rownames())
  • Erzeugung mit data.frame()
  • Konvertierung mit as.data.frame()
  • Auflösung mit unlist()

Datenstruktur – Data frame

  • Abfrage der Länge (i.e., Anzahl aller Werte) mit length()
  • Abfrage der Zeilen/Spaltenanzahl/Dimension: nrow(), ncol(), dim()
x <- 1:3
y <- c("a", "b", "c")
d <- data.frame(x = x, y = y)

str(d)
## 'data.frame':    3 obs. of  2 variables:
##  $ x: int  1 2 3
##  $ y: Factor w/ 3 levels "a","b","c": 1 2 3
names(d)
## [1] "x" "y"

Datenstruktur – Liste

  • Flexibelste (und "schlampigste") Datenstruktur in R
  • Kann beliebige Datentypen und Datenstrukturen beliebiger Länge enthalten
  • Grundstruktur ist ein Vektor, aber Element sind beliebige Objekte
  • Elemente sollten Namen haben (zur Definition names())
  • Erzeugung mit list()
  • Konvertierung mit as.list()
  • Auflösung mit unlist()

Datenstruktur – Liste

  • Abfrage der Länge (i.e., Anzahl der Elemente) mit length()
x <- 1:3
y <- c("a", "b", "c")
l <- list(x = x, y = y)

str(l)
## List of 2
##  $ x: int [1:3] 1 2 3
##  $ y: chr [1:3] "a" "b" "c"
l
## $x
## [1] 1 2 3
## 
## $y
## [1] "a" "b" "c"

Datenstrukturen – S4-Objekte

  • Grundlage objektorientierter Programmierung in R
  • Bedingt vergleichbar mit Listen, aber restriktivere Definition
  • Enthalten Komponenten beliebiger Datenstruktur und Datentypen
data(volcano)
V <- raster::raster(x = volcano)

str(V)
## Formal class 'RasterLayer' [package "raster"] with 12 slots
##   ..@ file    :Formal class '.RasterFile' [package "raster"] with 13 slots
##   .. .. ..@ name        : chr ""
##   .. .. ..@ datanotation: chr "FLT4S"
##   .. .. ..@ byteorder   : chr "little"
##   .. .. ..@ nodatavalue : num -Inf
##   .. .. ..@ NAchanged   : logi FALSE
##   .. .. ..@ nbands      : int 1
##   .. .. ..@ bandorder   : chr "BIL"
##   .. .. ..@ offset      : int 0
##   .. .. ..@ toptobottom : logi TRUE
##   .. .. ..@ blockrows   : int 0
##   .. .. ..@ blockcols   : int 0
##   .. .. ..@ driver      : chr ""
##   .. .. ..@ open        : logi FALSE
##   ..@ data    :Formal class '.SingleLayerData' [package "raster"] with 13 slots
##   .. .. ..@ values    : num [1:5307] 100 100 101 101 101 101 101 100 100 100 ...
##   .. .. ..@ offset    : num 0
##   .. .. ..@ gain      : num 1
##   .. .. ..@ inmemory  : logi TRUE
##   .. .. ..@ fromdisk  : logi FALSE
##   .. .. ..@ isfactor  : logi FALSE
##   .. .. ..@ attributes: list()
##   .. .. ..@ haveminmax: logi TRUE
##   .. .. ..@ min       : num 94
##   .. .. ..@ max       : num 195
##   .. .. ..@ band      : int 1
##   .. .. ..@ unit      : chr ""
##   .. .. ..@ names     : chr ""
##   ..@ legend  :Formal class '.RasterLegend' [package "raster"] with 5 slots
##   .. .. ..@ type      : chr(0) 
##   .. .. ..@ values    : logi(0) 
##   .. .. ..@ color     : logi(0) 
##   .. .. ..@ names     : logi(0) 
##   .. .. ..@ colortable: logi(0) 
##   ..@ title   : chr(0) 
##   ..@ extent  :Formal class 'Extent' [package "raster"] with 4 slots
##   .. .. ..@ xmin: num 0
##   .. .. ..@ xmax: num 1
##   .. .. ..@ ymin: num 0
##   .. .. ..@ ymax: num 1
##   ..@ rotated : logi FALSE
##   ..@ rotation:Formal class '.Rotation' [package "raster"] with 2 slots
##   .. .. ..@ geotrans: num(0) 
##   .. .. ..@ transfun:function ()  
##   ..@ ncols   : int 61
##   ..@ nrows   : int 87
##   ..@ crs     :Formal class 'CRS' [package "sp"] with 1 slot
##   .. .. ..@ projargs: chr NA
##   ..@ history : list()
##   ..@ z       : list()

Datentypen und Datenstrukturen – Fragen und Übungen I

  • Zeit: 5 - 10 Minuten, Art: selbständige Arbeit
    • Erzeugen Sie einen Vektor x aus den Zahlen 0 bis 5
    • Erzeugen Sie einen Vektor y aus sechs beliebigen Buchstaben
    • Überprüfen Sie die Datentypen der beiden Vektoren
    • Kombinieren Sie die Vektoren zu einem neuen Vektor z. Welchen Datentyp erwarten Sie für z?
    • Konvertieren Sie x in einen logischen Vektor (Name x2)
    • Berechnen Sie die Summen von x, y und z

Datentypen und Datenstrukturen – Fragen und Übungen II

  • Zeit: 5 - 10 Minuten, Art: selbständige Arbeit
    • Konvertieren Sie x in eine Matrix X mit 2 Zeilen
    • Ermitteln Sie Länge, Zeilenanzahl und Spaltenanzahl von X
    • Erzeugen Sie einen Data frame D aus x und y
    • Konvertieren Sie den Data frame in eine Liste L
    • Ändern Sie die Namen der Elemente von L in "A" und "B"
    • Inspizieren Sie die Datenstruktur von X, D und L. Was sind Unterschiede, was Gemeinsamkeiten?

Indizierung von Daten

Indizierung von Daten

  • Essentiell, um einzelne Werte von Objekten anzusprechen
  • Erfolgt über Operatoren: [], [,], [[]], $, @
  • Jede Datenstruktur wird anders indiziert
  • Wichtigste Fertigkeit im Umgang mit R
  • Indizierung mit negativen Zahlen entfernt Werte

Indizierung von Vektoren

  • Indizierung beschreibt die Position(en) von Vektorelementen
  • Indizierung über eckige Klammern: [m]
x <- 1:10
x[1]
## [1] 1
x[1:3]
## [1] 1 2 3
x[c(1, 4)]
## [1] 1 4
x[length(x)]
## [1] 10

Indizierung von Matrizen

  • Zwei Dimensionen benötigen zwei Index-Angaben: [m,n]
X <- matrix(data = 1:9, nrow = 3)
X
##      [,1] [,2] [,3]
## [1,]    1    4    7
## [2,]    2    5    8
## [3,]    3    6    9
X[1, 1]
## [1] 1
X[1:2, 2]
## [1] 4 5
X[,1]
## [1] 1 2 3

Indizierung von Data frames und Listen

  • Zwei Möglichkeiten: über Elementposition [[m]] und Elementname $
D <- data.frame(x = 1:2, y = 3:4)
D[[1]]
## [1] 1 2
D$y
## [1] 3 4
D$y[2]
## [1] 4

Indizierung von S4-Objekten

  • Über @-Operator und Name der Komponente
  • Wichtig: die Datenstruktur muss bekannt sein (str())
V
## class       : RasterLayer 
## dimensions  : 87, 61, 5307  (nrow, ncol, ncell)
## resolution  : 0.01639344, 0.01149425  (x, y)
## extent      : 0, 1, 0, 1  (xmin, xmax, ymin, ymax)
## coord. ref. : NA 
## data source : in memory
## names       : layer 
## values      : 94, 195  (min, max)
V@data@values
##    [1] 100 100 101 101 101 101 101 100 100 100 101 101 102 102 102 102 103
##   [18] 104 103 102 101 101 102 103 104 104 105 107 107 107 108 108 110 110
##   [35] 110 110 110 110 110 110 108 108 108 107 107 108 108 108 108 108 107
##   [52] 107 107 107 106 106 105 105 104 104 103 101 101 102 102 102 102 102
##   [69] 101 101 101 102 102 103 103 103 103 104 105 104 103 102 102 103 105
##   [86] 106 106 107 109 110 110 110 110 111 112 113 114 116 115 114 112 110
##  [103] 110 110 109 108 109 109 109 109 108 108 108 108 107 107 106 106 105
##  [120] 105 104 104 102 102 103 103 103 103 103 102 102 102 103 103 104 104
##  [137] 104 104 105 106 105 104 104 105 106 107 108 110 111 113 114 115 114
##  [154] 115 116 118 119 119 121 121 120 118 116 114 112 111 110 110 110 110
##  [171] 109 109 109 109 108 108 107 107 106 106 105 105 104 103 103 104 104
##  [188] 104 104 104 103 103 103 103 104 104 104 105 105 106 107 106 106 106
##  [205] 107 108 110 111 114 117 118 117 119 120 121 122 124 125 126 127 127
##  [222] 126 124 122 120 117 116 113 111 110 110 110 109 109 109 109 108 108
##  [239] 107 107 106 106 105 105 104 104 105 105 105 105 105 104 104 103 104
##  [256] 104 105 105 105 106 107 108 108 108 109 110 112 114 115 118 121 122
##  [273] 121 123 128 131 129 130 131 131 132 132 131 130 128 126 122 119 115
##  [290] 114 112 110 110 110 110 110 109 109 108 107 107 107 106 106 105 105
##  [307] 105 105 106 106 106 106 105 105 104 104 105 105 106 106 107 109 110
##  [324] 110 112 113 115 116 118 119 121 124 126 126 129 134 137 137 136 136
##  [341] 135 136 136 136 135 133 129 126 122 118 116 115 113 111 110 110 110
##  [358] 110 109 108 108 108 107 107 106 106 105 106 106 107 107 107 107 106
##  [375] 106 105 105 106 106 107 108 109 111 113 114 116 118 120 121 122 123
##  [392] 125 127 129 130 135 140 142 142 142 141 140 140 140 140 139 137 134
##  [409] 129 125 121 118 116 114 112 110 110 110 111 110 109 109 108 108 107
##  [426] 107 106 106 107 107 108 108 108 108 107 107 106 106 107 108 108 110
##  [443] 113 115 117 118 120 122 124 125 127 128 129 131 134 135 141 146 147
##  [460] 146 146 145 144 144 144 143 142 141 139 135 130 126 122 118 116 114
##  [477] 112 112 113 112 110 110 109 109 108 108 107 106 107 108 108 109 109
##  [494] 109 109 108 108 107 108 108 110 111 113 116 118 120 123 125 127 129
##  [511] 130 132 134 135 137 139 142 146 152 152 151 151 150 149 148 148 146
##  [528] 145 143 142 139 135 131 127 122 119 117 115 115 115 114 112 110 110
##  [545] 109 109 108 107 107 108 109 109 110 110 110 110 109 109 108 110 110
##  [562] 113 116 118 120 122 125 127 129 133 136 138 140 141 142 148 150 151
##  [579] 156 158 159 158 157 158 158 154 151 149 148 146 144 141 137 134 130
##  [596] 125 122 120 118 117 117 115 113 111 110 110 109 108 107 107 109 110
##  [613] 110 111 111 111 111 110 110 110 112 114 118 121 123 125 127 129 133
##  [630] 137 141 143 145 146 148 150 154 156 159 161 162 163 164 163 164 164
##  [647] 160 157 154 151 149 146 144 140 137 133 129 126 124 121 119 118 116
##  [664] 114 112 111 110 109 108 107 106 110 110 111 113 112 111 113 112 112
##  [681] 114 116 119 121 124 127 129 133 138 143 146 149 149 151 153 154 157
##  [698] 159 160 163 165 166 167 168 168 168 168 166 162 159 157 154 152 149
##  [715] 144 140 136 133 131 128 125 122 119 117 115 113 111 110 109 108 107
##  [732] 106 110 111 113 115 114 113 114 114 115 117 119 121 124 126 129 133
##  [749] 140 145 150 154 155 155 157 159 161 162 164 165 167 168 169 170 172
##  [766] 174 172 172 171 169 166 163 161 158 153 148 143 140 137 134 131 128
##  [783] 125 120 118 116 114 112 110 109 108 107 105 111 113 115 117 116 115
##  [800] 116 117 117 119 121 124 126 128 132 137 143 151 156 161 161 162 163
##  [817] 165 166 167 168 170 171 173 175 177 179 178 177 176 176 174 171 169
##  [834] 165 161 156 152 148 144 140 138 135 131 127 123 119 117 115 113 111
##  [851] 110 108 106 105 114 115 117 117 117 118 119 119 120 121 124 126 128
##  [868] 131 137 143 150 156 160 163 165 168 170 171 172 173 174 175 177 179
##  [885] 180 182 183 183 183 183 180 178 177 172 168 164 160 156 152 148 144
##  [902] 141 138 134 130 126 121 117 114 112 110 110 108 106 104 116 118 118
##  [919] 118 120 121 121 122 122 123 125 128 130 134 141 147 152 156 160 165
##  [936] 168 170 174 176 179 180 181 181 182 182 183 184 186 187 187 184 184
##  [953] 181 180 176 172 168 165 161 157 153 149 145 142 138 133 129 125 120
##  [970] 115 111 110 110 108 106 104 118 120 120 121 122 123 124 124 125 126
##  [987] 127 129 132 135 142 149 153 157 161 166 170 174 178 180 182 183 184
## [1004] 184 185 186 186 187 189 189 189 189 189 186 182 179 175 171 168 165
## [1021] 162 157 152 149 145 141 137 131 125 120 116 111 110 110 108 106 104
## [1038] 120 121 122 123 124 125 126 127 127 128 130 132 134 137 142 151 155
## [1055] 158 162 169 172 176 181 183 184 186 187 188 189 189 189 189 190 190
## [1072] 191 190 190 188 186 183 180 175 171 168 165 161 157 152 149 145 141
## [1089] 134 127 121 116 112 110 110 108 106 104 120 122 125 126 126 127 128
## [1106] 129 130 130 132 134 136 139 145 152 157 160 167 172 175 178 181 185
## [1123] 186 188 190 191 192 193 193 192 192 191 192 191 191 190 190 187 184
## [1140] 181 177 172 169 165 161 156 152 147 143 139 131 123 119 115 111 110
## [1157] 108 106 105 121 124 126 128 129 129 130 131 132 133 135 137 139 143
## [1174] 150 154 159 164 170 173 176 179 184 186 189 190 191 192 193 194 195
## [1191] 194 193 192 191 191 191 191 190 190 188 184 181 177 173 169 165 160
## [1208] 155 149 145 142 136 129 123 118 114 110 108 108 107 122 125 127 130
## [1225] 130 131 133 134 135 136 137 140 143 147 154 158 162 166 171 174 177
## [1242] 181 186 189 190 190 191 192 191 191 190 189 188 189 190 190 191 190
## [1259] 190 190 189 186 184 181 177 173 169 164 158 152 148 144 140 134 125
## [1276] 118 115 111 110 108 107 122 125 128 130 132 133 135 136 137 139 140
## [1293] 143 147 152 157 161 164 168 172 175 179 182 186 190 190 190 190 189
## [1310] 187 184 184 183 182 182 183 183 183 184 185 186 187 186 185 184 181
## [1327] 177 173 169 163 157 149 145 141 136 130 119 116 112 110 108 106 123
## [1344] 126 129 131 133 135 137 138 139 141 143 147 150 156 161 164 167 170
## [1361] 173 177 181 184 187 188 190 189 187 185 183 179 176 174 174 174 174
## [1378] 174 176 177 179 180 182 183 182 181 181 180 176 171 166 160 152 147
## [1395] 142 138 133 126 121 115 110 106 105 124 127 130 132 135 137 138 140
## [1412] 142 144 147 149 154 157 161 165 168 171 175 178 181 184 186 187 187
## [1429] 184 184 181 179 175 171 169 168 168 168 169 170 172 174 177 178 179
## [1446] 180 181 181 180 179 174 167 161 155 148 144 139 134 128 121 115 110
## [1463] 106 105 123 128 131 133 136 138 140 142 144 146 149 151 154 157 160
## [1480] 164 168 172 175 178 181 183 184 184 185 183 180 177 174 170 167 165
## [1497] 164 164 164 165 166 168 171 175 176 178 180 181 180 180 179 177 170
## [1514] 163 157 150 144 139 134 128 121 115 110 108 107 123 127 131 134 136
## [1531] 138 140 142 144 147 149 151 154 157 160 164 168 171 174 178 180 181
## [1548] 181 182 183 181 178 173 169 166 163 161 161 160 160 161 163 165 168
## [1565] 173 176 178 179 180 181 180 180 175 173 166 159 152 145 139 134 127
## [1582] 121 115 110 109 108 120 124 128 131 134 137 139 142 144 146 149 151
## [1599] 153 156 160 163 167 171 174 178 180 180 180 180 180 180 175 171 167
## [1616] 162 160 158 157 157 157 158 159 162 166 170 175 177 178 180 181 181
## [1633] 180 178 175 169 160 154 148 140 134 128 121 115 110 110 109 118 121
## [1650] 125 129 132 134 137 140 142 145 147 149 151 155 159 163 166 169 173
## [1667] 177 179 180 180 180 180 179 174 169 166 161 158 156 154 153 153 154
## [1684] 156 159 163 169 173 175 178 180 181 180 180 179 175 170 160 154 149
## [1701] 142 135 128 122 116 111 110 110 117 120 121 125 129 132 135 138 140
## [1718] 143 145 147 149 153 157 160 163 166 171 174 177 179 180 180 180 179
## [1735] 172 168 164 160 157 154 151 149 150 150 154 158 164 169 174 178 180
## [1752] 180 180 180 178 177 175 170 161 153 148 142 135 129 123 116 113 112
## [1769] 110 115 118 120 122 126 130 133 136 138 141 143 145 148 151 154 157
## [1786] 160 163 168 171 174 177 179 179 179 176 171 167 164 160 156 153 149
## [1803] 148 149 151 155 158 163 170 173 177 179 180 180 180 178 175 173 171
## [1820] 162 154 147 141 136 130 124 117 115 112 110 114 116 118 120 122 127
## [1837] 131 133 136 138 141 143 146 148 151 154 157 160 164 168 171 174 178
## [1854] 178 179 177 173 169 165 161 157 154 151 149 150 152 155 159 166 171
## [1871] 175 177 179 180 180 179 176 174 171 168 159 151 146 141 135 129 124
## [1888] 119 116 113 110 115 114 116 118 120 122 127 129 132 136 139 141 143
## [1905] 146 148 151 153 156 160 164 167 172 174 176 177 176 173 170 166 162
## [1922] 159 157 154 153 154 155 158 161 169 172 174 176 178 178 178 178 175
## [1939] 172 169 162 156 149 144 140 134 128 123 118 115 112 110 113 113 114
## [1956] 116 118 120 122 125 129 133 136 138 141 143 146 149 150 153 156 160
## [1973] 165 170 173 176 176 176 173 172 169 165 163 160 158 157 158 159 161
## [1990] 166 170 170 173 175 176 178 176 173 171 168 164 158 153 146 140 137
## [2007] 132 127 121 117 113 111 110 111 112 113 114 116 118 120 122 126 130
## [2024] 133 136 139 142 145 147 148 151 155 158 163 168 173 176 177 177 176
## [2041] 174 171 169 166 164 161 161 162 164 165 167 170 170 171 173 173 173
## [2058] 170 168 165 163 160 155 149 143 138 134 130 125 119 116 112 110 109
## [2075] 110 112 113 113 114 116 118 120 123 127 131 134 137 141 143 145 148
## [2092] 150 154 157 161 166 171 176 178 178 178 176 174 172 170 167 167 167
## [2109] 166 168 170 169 168 167 168 168 168 168 167 165 163 160 156 152 146
## [2126] 140 136 131 128 122 118 114 110 110 109 109 110 111 112 114 116 118
## [2143] 119 120 124 128 131 136 140 142 145 147 150 153 157 160 165 170 174
## [2160] 178 179 179 178 178 176 174 171 170 170 170 168 167 166 164 163 161
## [2177] 162 163 163 163 161 160 157 153 148 142 136 130 127 124 120 117 113
## [2194] 110 110 109 108 109 111 112 114 116 117 118 120 121 125 128 132 138
## [2211] 142 144 147 149 153 156 160 164 170 174 178 180 180 179 179 178 176
## [2228] 172 170 170 170 168 166 164 162 160 157 156 157 158 158 156 153 151
## [2245] 149 144 139 130 127 124 121 118 115 112 110 110 109 108 109 111 113
## [2262] 114 116 117 118 119 120 122 126 130 135 139 143 147 149 152 156 160
## [2279] 164 169 173 177 180 180 180 180 179 178 174 170 170 168 167 165 163
## [2296] 161 157 154 153 152 152 152 149 148 147 144 140 134 128 125 122 119
## [2313] 117 114 110 110 109 109 107 108 111 112 114 115 116 117 119 120 121
## [2330] 124 128 133 137 141 145 149 152 156 160 164 168 172 176 179 180 180
## [2347] 180 179 178 174 170 168 166 165 163 161 158 154 150 149 148 146 145
## [2364] 143 143 143 140 136 130 126 123 120 118 115 112 110 110 109 109 107
## [2381] 108 110 112 113 113 115 116 118 120 122 125 128 132 136 140 145 148
## [2398] 150 155 160 164 167 170 174 177 179 179 178 176 176 173 169 166 164
## [2415] 163 161 159 155 152 148 145 143 141 140 139 139 138 136 132 128 124
## [2432] 121 118 116 114 111 110 110 109 108 107 108 109 111 113 114 116 117
## [2449] 119 120 122 125 128 132 137 141 144 146 149 152 157 162 166 168 171
## [2466] 173 175 175 173 172 172 171 168 165 162 160 158 156 153 149 145 142
## [2483] 139 138 137 136 135 133 131 129 126 122 119 117 114 112 110 110 109
## [2500] 108 107 108 109 110 112 114 115 116 117 119 120 122 126 129 133 137
## [2517] 141 143 146 148 151 155 160 164 167 168 169 170 170 169 168 167 168
## [2534] 166 163 160 158 155 153 150 147 143 140 137 136 134 133 132 130 129
## [2551] 127 125 121 118 115 112 110 110 110 108 107 107 109 110 111 113 115
## [2568] 116 117 118 120 121 123 126 129 133 138 141 143 146 148 150 155 159
## [2585] 163 165 166 167 168 168 166 165 164 161 160 159 158 155 152 149 147
## [2602] 144 141 138 135 134 132 130 129 128 126 124 122 120 117 113 111 110
## [2619] 110 110 108 107 107 110 111 112 113 116 117 118 119 120 122 125 127
## [2636] 130 133 138 141 143 146 148 150 154 159 162 163 164 166 166 166 165
## [2653] 163 161 159 157 156 155 153 150 146 143 140 138 136 133 132 130 129
## [2670] 128 125 124 122 120 119 117 114 111 110 110 109 108 107 107 111 112
## [2687] 113 114 116 117 118 119 120 123 125 128 130 134 139 141 144 146 148
## [2704] 151 154 158 161 164 166 167 168 166 165 163 161 158 156 154 152 150
## [2721] 146 142 139 137 135 133 131 130 129 128 127 125 123 121 120 118 116
## [2738] 113 111 110 110 109 108 107 106 111 112 113 115 117 118 118 120 121
## [2755] 124 126 128 131 135 139 142 144 146 148 151 155 160 164 165 168 169
## [2772] 169 168 166 163 160 158 156 153 151 148 145 142 139 137 135 132 130
## [2789] 129 127 126 125 124 123 120 120 117 116 114 112 110 110 108 107 106
## [2806] 106 112 113 114 116 117 118 119 120 122 124 127 129 132 135 139 142
## [2823] 144 146 149 152 157 162 167 169 170 170 170 168 165 163 161 159 157
## [2840] 155 151 148 145 141 139 136 134 132 130 128 127 126 124 123 122 120
## [2857] 119 117 116 114 112 111 109 107 106 106 105 113 114 115 116 117 119
## [2874] 119 120 122 125 127 129 132 135 139 142 144 147 149 154 159 164 169
## [2891] 170 170 170 170 170 168 165 163 161 158 155 151 148 145 142 139 137
## [2908] 135 132 131 128 126 125 124 122 121 120 119 117 115 113 111 110 109
## [2925] 106 105 105 104 113 114 115 117 118 119 120 121 123 125 127 130 132
## [2942] 135 139 142 145 148 150 156 161 166 170 170 170 170 170 170 169 166
## [2959] 163 161 159 155 151 148 146 143 140 138 135 134 132 130 127 125 123
## [2976] 121 120 120 119 116 114 112 110 110 108 106 105 104 104 114 115 116
## [2993] 117 118 119 120 121 123 126 128 130 133 136 139 142 145 148 152 157
## [3010] 161 166 168 170 170 170 170 168 166 164 163 160 159 155 151 148 146
## [3027] 143 141 138 136 134 132 130 128 125 123 121 120 120 118 116 113 111
## [3044] 110 110 109 106 105 104 104 115 116 117 118 119 120 121 121 123 126
## [3061] 128 131 134 136 139 142 145 149 152 157 161 163 164 166 168 167 166
## [3078] 164 163 161 160 158 156 152 149 147 144 143 141 139 136 134 132 130
## [3095] 128 125 122 120 120 119 117 115 113 110 110 109 107 106 105 104 104
## [3112] 115 116 117 118 119 120 121 122 123 125 128 131 134 137 139 142 145
## [3129] 149 152 156 159 159 160 162 162 161 161 160 159 158 157 155 153 150
## [3146] 148 146 145 143 142 140 137 134 131 129 126 124 122 120 119 117 115
## [3163] 113 111 110 109 109 107 106 105 104 104 114 115 116 116 118 119 120
## [3180] 121 122 126 129 132 135 137 140 143 146 149 152 155 156 157 158 159
## [3197] 159 159 158 158 157 155 153 151 150 149 147 146 145 144 142 141 138
## [3214] 135 132 128 125 122 120 118 117 115 113 112 110 109 108 108 106 105
## [3231] 105 104 104 113 114 115 116 117 118 119 120 123 126 129 132 135 138
## [3248] 140 143 146 148 151 153 154 156 157 157 157 157 156 155 154 152 150
## [3265] 149 148 147 146 145 144 142 141 140 139 136 132 129 125 121 118 116
## [3282] 115 113 111 110 109 108 108 107 106 105 104 104 104 112 113 114 115
## [3299] 116 117 119 120 122 126 130 133 136 138 141 143 146 148 150 152 154
## [3316] 155 155 155 155 155 154 152 152 150 148 147 146 145 145 143 142 141
## [3333] 140 140 140 137 133 129 125 120 117 115 111 110 110 109 108 107 107
## [3350] 106 105 105 104 104 103 111 112 114 115 116 117 118 120 122 125 131
## [3367] 134 137 139 142 144 146 148 150 152 153 153 153 153 153 153 153 151
## [3384] 149 147 146 144 144 143 143 142 141 140 140 140 140 138 134 130 123
## [3401] 120 118 111 110 110 110 108 107 106 108 105 105 104 104 103 103 111
## [3418] 112 113 115 115 116 117 119 121 126 131 135 138 140 142 144 146 148
## [3435] 150 151 151 151 151 151 151 151 151 150 148 146 144 142 141 141 142
## [3452] 141 140 140 140 140 140 140 136 132 126 120 115 110 110 110 109 107
## [3469] 106 105 107 105 104 104 104 103 103 112 113 113 114 115 116 117 119
## [3486] 122 127 132 135 139 141 143 145 147 149 150 150 150 150 150 150 150
## [3503] 150 150 149 147 144 142 141 140 140 140 140 140 140 140 140 140 140
## [3520] 137 133 128 120 117 110 110 110 108 106 105 105 106 105 104 104 103
## [3537] 103 103 112 113 114 114 116 117 118 120 122 128 132 136 139 141 144
## [3554] 146 147 149 150 150 150 150 150 150 150 150 150 149 146 143 141 140
## [3571] 140 139 139 139 140 140 140 140 140 140 137 133 129 121 118 110 110
## [3588] 109 107 106 105 105 105 104 104 103 103 103 102 112 114 114 115 116
## [3605] 117 119 120 122 128 133 136 140 142 144 146 148 150 150 150 150 150
## [3622] 150 150 150 150 150 148 145 142 140 138 138 138 137 138 140 140 140
## [3639] 140 140 140 137 134 130 122 118 110 110 108 106 105 103 104 104 104
## [3656] 104 103 103 102 102 113 114 115 116 116 117 118 120 123 129 133 137
## [3673] 140 142 144 146 149 150 150 150 150 150 150 150 150 150 150 147 143
## [3690] 141 139 137 136 136 135 136 138 140 140 140 140 139 136 134 130 123
## [3707] 119 113 109 108 106 104 103 104 104 104 103 103 102 102 101 114 115
## [3724] 115 116 117 118 118 120 123 129 133 137 140 143 145 147 150 150 150
## [3741] 150 150 150 150 150 150 150 148 145 142 139 138 136 135 134 134 134
## [3758] 136 138 137 138 139 137 134 132 125 122 117 114 109 107 105 103 102
## [3775] 104 104 103 103 102 102 101 101 114 115 116 117 117 119 118 120 123
## [3792] 128 132 136 139 142 145 148 150 150 150 150 150 150 150 150 150 150
## [3809] 147 144 141 139 136 135 134 133 132 132 134 134 134 134 135 133 131
## [3826] 128 124 120 116 113 110 107 104 102 102 103 103 103 102 102 102 101
## [3843] 100 115 116 116 117 118 119 119 120 124 128 132 136 139 142 145 148
## [3860] 150 150 150 150 150 150 150 150 150 149 146 143 140 138 135 134 133
## [3877] 131 131 131 131 131 131 131 130 127 124 122 119 117 115 112 109 106
## [3894] 104 101 102 103 103 102 102 102 101 100 100 115 116 117 118 118 119
## [3911] 120 123 125 128 131 135 138 141 145 148 150 150 150 150 150 150 150
## [3928] 150 150 147 145 142 139 137 134 132 131 130 129 128 128 128 128 128
## [3945] 126 123 121 119 116 114 112 110 108 105 103 101 103 103 103 102 102
## [3962] 101 100 100 100 116 117 118 118 119 120 122 123 125 128 131 134 137
## [3979] 141 145 148 149 150 150 150 150 150 150 150 148 145 143 141 138 135
## [3996] 133 130 129 128 127 126 125 125 125 124 123 120 118 116 114 111 109
## [4013] 107 106 104 102 100 101 101 102 102 101 100 100 100 100 116 117 118
## [4030] 119 120 121 123 124 126 128 130 133 137 140 144 145 147 148 149 150
## [4047] 149 149 147 146 144 141 139 136 133 131 129 128 127 126 125 124 123
## [4064] 123 122 121 120 118 116 114 112 108 107 105 103 102 100 100 100 100
## [4081] 101 101 100 100 100 100 100 117 118 119 119 120 121 123 124 126 128
## [4098] 129 131 135 139 142 143 145 146 147 147 147 146 144 142 140 138 135
## [4115] 133 130 128 127 126 125 124 123 122 121 120 119 118 117 115 114 112
## [4132] 110 106 105 102 101 100 100 100 100 100 100 100 100  99  99  99  99
## [4149] 117 118 119 120 120 121 123 124 125 126 128 129 132 137 140 142 143
## [4166] 143 144 144 144 143 141 139 137 135 133 130 128 127 126 125 123 122
## [4183] 121 120 119 117 116 115 114 112 111 108 107 105 100 100 100 100 100
## [4200] 100 100  99  99  99  99  99  99  99  98 116 117 118 120 120 121 122
## [4217] 123 124 125 126 128 130 134 139 140 141 141 141 141 141 140 138 136
## [4234] 134 133 131 129 127 125 124 123 122 120 119 118 117 116 114 112 111
## [4251] 108 109 106 106 100 100 100 100 100  99  99  99  99  99  99  99  98
## [4268]  98  98  97 114 115 116 117 119 119 120 121 122 123 125 127 129 133
## [4285] 136 134 134 136 138 138 137 137 135 133 132 130 129 127 125 124 122
## [4302] 121 120 119 117 116 115 114 112 110 109 108 107 105 105 100 100 100
## [4319] 100  99  99  99  98  98  98  98  98  97  97  97  97 112 113 114 115
## [4336] 116 116 117 119 120 122 124 126 127 129 129 128 127 129 132 133 133
## [4353] 133 133 131 129 127 126 125 124 122 121 119 118 117 116 114 113 112
## [4370] 110 109 108 106 106 105 100 100 100  98  98  98  98  98  98  97  97
## [4387]  97  97  97  97  97  96 109 111 112 112 113 113 113 114 116 119 121
## [4404] 123 124 125 124 123 123 123 125 127 129 129 128 128 127 125 124 123
## [4421] 122 121 119 118 117 116 114 113 112 110 109 108 107 106 105 100 100
## [4438] 100  97  97  97  97  97  97  97  96  96  96  96  96  96  96  96 106
## [4455] 107 108 108 109 110 110 112 113 114 117 119 120 121 119 117 117 117
## [4472] 118 120 123 124 125 125 125 123 121 120 120 119 118 117 116 115 114
## [4489] 113 111 109 109 107 106 105 100 100 100  96  96  96  96  96  96  96
## [4506]  96  96  96  96  96  96  96  96  96 104 105 105 106 106 107 108 108
## [4523] 109 109 111 115 116 114 113 112 111 110 111 113 116 119 122 122 122
## [4540] 121 120 119 118 118 117 116 115 114 113 112 111 108 108 106 105 100
## [4557] 100 100  96  96  96  96  96  96  96  96  96  96  96  96  96  96  96
## [4574]  96  96 102 103 103 104 104 105 106 106 107 108 109 111 112 110 109
## [4591] 108 108 108 108 109 110 112 116 117 117 118 118 118 117 116 116 115
## [4608] 114 113 112 111 110 107 107 105 100 100 100  97  96  96  96  96  96
## [4625]  96  96  96  96  96  96  96  96  96  96  96  96 101 102 103 103 104
## [4642] 105 105 106 106 107 108 109 109 107 106 106 105 105 105 106 107 108
## [4659] 109 110 111 113 114 115 115 115 114 113 112 111 110 108 108 106 105
## [4676] 100 100 100  97  97  96  96  96  96  96  96  96  96  96  96  96  96
## [4693]  96  96  96  96  96 100 101 102 102 103 103 104 104 105 106 106 107
## [4710] 106 106 106 105 105 104 103 103 104 105 107 108 110 111 111 112 112
## [4727] 113 113 112 111 110 108 107 106 105 100 100 100  98  97  97  96  96
## [4744]  96  96  96  96  96  96  96  96  96  96  96  96  96  96  96 100 101
## [4761] 101 102 102 103 103 104 104 105 105 105 105 106 105 105 104 103 102
## [4778] 101 102 103 104 106 107 110 111 111 111 112 112 112 110 107 107 106
## [4795] 105 102 100 100  99  98  97  97  96  96  96  96  96  96  96  96  96
## [4812]  96  96  96  96  96  96  96  95  99 100 101 102 102 103 103 103 104
## [4829] 104 104 104 103 104 104 104 104 102 101 101 102 103 104 105 107 110
## [4846] 111 111 111 111 111 111 108 106 105 105 102 101 100  99  99  98  97
## [4863]  97  96  96  96  96  96  96  96  96  96  96  96  96  96  96  96  95
## [4880]  95  99 100 100 101 101 102 102 102 103 103 103 103 102 103 103 104
## [4897] 103 102 101 101 101 102 103 104 106 109 110 111 111 111 110 110 107
## [4914] 105 103 104 100 100  99  99  98  98  97  97  96  96  96  96  96  96
## [4931]  96  96  96  96  95  95  95  95  95  95  95  99 100 100 100 101 101
## [4948] 101 102 102 103 102 102 101 102 102 103 103 101 101 100 101 101 102
## [4965] 103 105 109 110 110 111 110 110 109 106 105 100 102 100  99  99  99
## [4982]  98  98  97  97  96  96  96  96  96  96  95  95  95  95  95  95  95
## [4999]  95  95  95  94  99  99  99  99 100 100 101 101 102 102 101 101 101
## [5016] 101 101 102 102 101 100 100 101 101 101 103 104 107 109 109 110 110
## [5033] 109 108 105 102 100 100  99  99  99  98  98  98  97  96  96  96  96
## [5050]  96  95  95  95  95  95  95  95  94  94  94  94  94  94  98  99  99
## [5067]  99  99 100 100 101 101 102 101 100 100 100 101 101 101 100 100 100
## [5084] 100 101 101 101 103 106 107 109 109 109 109 107 104 101 100  99  99
## [5101]  99  98  98  98  97  96  96  96  96  95  95  95  95  95  95  95  94
## [5118]  94  94  94  94  94  94  94  98  98  98  99  99  99 100 100 101 101
## [5135] 100 100  99  99 100 100 100 100 100 100 100 101 101 101 102 105 106
## [5152] 109 108 109 107 105 102 100 100  99  99  98  98  98  97  96  96  96
## [5169]  96  95  95  95  95  95  95  94  94  94  94  94  94  94  94  94  94
## [5186]  97  98  98  98  99  99  99 100 100 100 100 100  99  99  99 100 100
## [5203] 100 100 100 100 100 101 101 101 103 104 105 106 105 104 101 100 100
## [5220]  99  99  98  98  97  97  97  96  96  96  95  95  95  95  95  94  94
## [5237]  94  94  94  94  94  94  94  94  94  94  97  97  97  98  98  99  99
## [5254]  99 100 100 100  99  99  99  99  99 100 100 100 100 100 100 101 101
## [5271] 100 100 100 100 100 100 100 100 100 100  99  99  98  97  97  97  96
## [5288]  96  96  95  95  95  95  94  94  94  94  94  94  94  94  94  94  94
## [5305]  94  94  94

Indizierung von Objekten – Fragen und Übungen I

  • Zeit: 10 Minuten, Art: selbständige Übung
  • Wir arbeiten mit den Objekten x, X, D und L
    • Multiplizieren Sie das dritte und vierte Element von x mit 10
    • Fügen Sie die erste Spalte von X in das zweite Element von L ein
    • Benennen Sie die Elemente von D um in c("", "")
    • Wie können nun die Elemente von D indiziert werden?
    • Erzeugen Sie eine weitere Liste im zweiten Element von L

Ein Grundvokabular

Einige wichtige Sprachelemente – Übergabe von Werten

  • =, <-, -> und assign(x, value)
    • =, um Argumente in Funktionen zu definieren
    • <- oder ->, um Werte zuzuweisen
a <- 1:10
mean(x = a)
## [1] 5.5
  • Indizieren von Objekten: [], [,], [[]], $, @

Einige wichtige Sprachelemente – Informationen

  • Datentyp anzeigen: typeof(),
  • Datenstruktur anzeigen: str(),
  • Anfang und Ende von Objektwerten anzeigen: head(), tail()
x <- 1:100
head(x)
## [1] 1 2 3 4 5 6
tail(x)
## [1]  95  96  97  98  99 100

Einige wichtige Sprachelemente – Bool'sche Ausdrücke

  • UND: & (vektoriell) und && (nicht vektoriell),
  • ODER | (vektoriell) und || (nicht vektoriell)
  • NOT !
1:10 & 1:10
##  [1] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
1:10 && 1:10
## [1] TRUE

Einige wichtige Sprachelemente – Logische Vergleiche

  • A ist gleich B: ==
  • A ist ungleich B: !=
  • A ist größer als B: >
  • A ist gößer oder gleich B: >=
  • Enthält A NA-Werte: is.na()
1:4 == 1:4
## [1] TRUE TRUE TRUE TRUE
1:4 > rep(2, 4)
## [1] FALSE FALSE  TRUE  TRUE

Einige wichtige Sprachelemente – Grundrechenoperationen

  • +, -, *, /, ^
  • sqrt(), exp(), log(), log10(), log2()
  • abs(), sign()
  • sin(), cos(), tan(), asin(), acos(), atan()

  • Runden round(), Aufrunden ceiling(), Abrunden floor(), Abschneiden trunc(), Runden auf signifikante Dezimalstellen signif()

Einige wichtige Sprachelemente – Einfache deskriptive Statistik

  • Summe sum(), Maximalwert max(), Minimalwert min(), Quantil quantile(),
  • Mittelwert mean(), weighted.mean(), Median median() (Optionen!)
  • Spannweite range(), Standardabweichung sd(), Varianz var()
  • Korrelationskoeffizient cor(method = c("pearson", "kendall", "spearman"))

Einige wichtige Sprachelemente – "Flow of control"

  • Schleifen (Achtung, Vermeiden!): for(),while(), next(), break()
  • Entscheidungen: if(), if() {} else {}, ifelse(), switch()

Einige wichtige Sprachelemente – Die apply-Familie

  • R ist vektor-basiert, d.h., Schleifen sollten wo immer möglich durch vektorisierte Operationen ersetzt werden.

  • Matrizen: apply(X, MARGIN, FUN)
  • Listen und Data frames: lapply(X, FUN)

  • Und weitere apply-Funktionen (sapply(), vapply(), mapply(), …)

  • Parallel-Prozessierung mit parApply() und parLapply()

Letzte wichtige Begriffe

  • Objekt: Variable, Funktion, Struktur, Methode, die in R verwendet werden kann.
  • Variable: Jedes Objekt, das einen oder mehrere verarbeitbare Werte hat.
  • Funktion: Eine Regel, um Variablen zu manipulieren. Besitzt Funktionsnamen und Funktionsargumente. Erzeugt Objekte (Funktionswert).
  • Argumente: Optionen, um die Funktionsroutine zu verändern.
  • Skript: Textdokument, das Abfolgen von Funktionsaufrufen und Kommentare enthält.
  • Package: Sammlung von Funktionen, Dokumentationen und Beispieldaten.

Ein paar Hausaufgaben

Ein paar Hausaufgaben

Ein paar Hausaufgaben

  • Projekt "cars" anlegen
  • Datensatz laden
  • Struktur ergründen
  • Data frame-Elemente extrahieren (z.B. x <- mtcars$disp)
  • Berechnungen mit extrahierten Elementen, auch indizierten Subsets
  • Logische Vergleiche (z.B. Verbrauch größer als Mittelwert)
  • Statistische Lage- und Streuungsmaße (Test verschiedener Methoden)
  • Korrelationsanalysen (verschiedene Methoden probieren)

Und morgen?

Der morgige Tag

  • Skripte schreiben
  • Bausteine für Skripte
  • Funktionen schreiben

  • Daten importieren
  • Daten speichern und exportieren

  • Die ersten Plots

Geschafft