Übung 1: Einführung in R#
Was ist R?#
R ist ein Programm für statistische Berechnungen und Grafiken. Sie wird häufig in der Datenanalyse, Statistik und maschinellem Lernen verwendet. Man kann R für ganz einfache Berechnungen wie einen Taschenrechner verwenden. Darüberhinas bietet es aber sehr viele Möglichkeiten um komplexe Analysen durchzuführen.
Vorteile von R:#
Open Source und kostenlos
Große Community und viele Pakete
Leistungsfähig für Datenanalyse und Visualisierung
Wie führe ich den Code aus?#
Um den Code ausführen zu können haben Sie 2 Möglichkeiten:
Variante 1: Kopie des Codes in ein Skript nach R-Studio und dort ausführen (mit Strg + Enter wird eine Zeile ausgeführt; mit klick auf „source“ wird das gesamte Skript ausgeführt)
Variante 2: Öffnen dieser Seite im Jupyter-Hub, indem Sie auf die Rakete oben klicken; dort anmelden mit dem Login der Informatik; dann in den Code-klicken und mit Shift + Enter die Zelle ausführen.
Probieren Sie am besten mal beides aus.
R als Taschenrechner#
Die Grundrechenarten geben wir wie bei eine Taschenrechner ein. Auch Klammern geben wir wie bei einem Taschenrechner ein.
# Addition
3 + 5
# Multiplikation
4 * 7
# Potenzen
2^3
# Wurzel
sqrt(16)
# ein größerer Term
((3+4)/5)^2
Aufgaben#
Berechnen Sie
\(10 \cdot 3 - 5^2 + \sqrt{49}\)
\((8 + 24) \cdot (6 / 5) - 4^2\)
\(\left(\frac{154 - 35}2\right)^\frac32 +2\sqrt{81}\)
\(e^3 + \pi^2\)
\(\frac{\sqrt[3]{3+5\cdot 7}}{4^3-5^2}\cdot 2^{11}\)
\(12!\)
Lösungen (gerundet): \(12\), \(\quad 22.4\), \(\quad 476.9606\), \(\quad 29.9551\), \(\quad 176.5468\), \(\quad 479001600\)
# Hier kann gerechnet werden...
Variablen zuweisen und ausgeben#
Falls man größere Ausdrücke zu berechnen hat, sind Variablen hilfreich.
Die Definition einer Variablen nennt man Zuweisung. Man nutzt dazu einen Pfeil <-
. Hier sind ein paar Beispiele
x <- 10 # x bekommt den Wert 10 zugewiesen
y <- 5 # y bekommt den Wert 5 zugewiesen
z <- x + y # z ist die Summe x und y
z # Ausgabe des Ergebnisses
Das ist insbesondere dann nützlich, wenn die Formeln öfter verwendet werden sollen und sich die Werte der Variablen ändern.
Aufgaben#
Nutzen Sie jeweils Variablen und geben Sie die Lösungen aus
Weisen Sie den Variablen
a
den Wert 7 undb
den Wert 3 zu und berechnen Siea
hochb
Berechnen Sie \(3x+4x^2+7x^3-2x^4\) für \(x=3\)
Berechnen Sie \(\frac{\lambda^k}{k!} \cdot e^{-\lambda}\) für \(\lambda=5\) und \(k=4\). Mit \(e\) ist die Eulersche Zahl gemeint.
Berechnem Sie die beiden Zahlen \(p_0 - z \sqrt{\frac{p_0 (1 - p_0)}{n}}\) und \(p_0 + z \sqrt{\frac{p_0 (1 - p_0)}{n}}\) für \(p_0=0.4\), \(z=1.5\) und \(n=30\).
Lösungen (gerundet): \(343\), \(\quad 72\), \(\quad 0.1755\), \(\quad 0.2658\)
# Hier kann gerechnet werden...
Datentypen in R#
Datentypen sind grundlegend bei der Arbeit mit R, da sie bestimmen, wie Daten gespeichert und manipuliert werden.
Warum verschiedene Datenarten notwendig sind:#
Operationen: Verschiedene Operationen erfordern bestimmte Datenarten. Beispielsweise sind mathematische Operationen nur für numerische Daten gültig.
Speicherplatz: Numerische Daten benötigen in der Regel weniger Speicherplatz als Text.
Funktionserfordernisse: Viele Funktionen in R sind für bestimmte Datenarten konzipiert, beispielsweise benötigen Plot-Funktionen numerische Daten.
Wichtige Datenarten in R:#
Numerisch (Numeric):
Beschreibung: Speichert Zahlen mit Dezimalstellen (z. B. 3,14).
Beispiel:
x <- 5
;x <- 3.14
Zeichenkette (Character):
Beschreibung: Speichert Text in Anführungszeichen.
Beispiel:
x <- "hallo"
Logisch (Logical/Boolean):
Beschreibung: Boolesche Werte, entweder WAHR (TRUE) oder FALSCH (FALSE).
Beispiel:
x <- TRUE
Weitere wichtige Datentypen (die wir zum Teil noch kennenlernen):
Faktor (factor)
Vektor (vector)
Liste (list)
Matrix (matrix)
Data-Frame (data.frame)
Mit dem Befehl class()
kann man den Datentyp eines Objekts anzeigen.
Beispiele#
# Numerisch
num <- 10.5
num
# Zeichenkette
text <- "Hallo R"
text
# Boolean
logisch <- TRUE
logisch
Aufgaben#
Erstellen Sie eine Variable
mein_text
mit dem Wert „Ich lerne R“. Geben Sie sie aus.Erstellen Sie eine numerische Variable
x
und eine Zeichenkettewort
(mit beliebigen Werten) sowie eine boolsche Variablebool
, welche WAHR ist. Nehmen Sie jeweils 2 der drei Variablen (auch 2 gleiche) und versuchen Sie diese mit+
zu verknüpfen. Was passiert dabei? (z.B:x + wort
oderbool + bool
)Prüfen Sie mit
class(wort)
, ob das Objekt tatsächlich den Datentypcharacter
hat.Geben Sie
5<6
und9<6
ein. Was passiert? Geben Sieclass(5<6)
ein.Definieren Sie zwei character Variablen
vorname
undnachname
(weisen Sie beliebige Namen zu). Geben Sie nunpaste(vorname, nachname)
ein. Was passiert? Geben Sie dann folgendes ein:paste("Ich bin ",vorname)
. Erzeugen Sie nun mitpaste
und den Variablenvorname
undnachname
den besonders coolen Spruch:Mein Name ist Bond, James Bond
mit Ihrem Vor- und Nachname ausLernen Sie um Hilfe zu fragen! Geben Sie ein
help(paste)
# Hier kann gerechnet werden...
Vektoren in R#
In der Statistik haben wir es typischerweise mit mehr als nur einer Zahl zu tun. Wir erheben und/oder analysieren Daten (meist Zahlen und meist sehr viele). Um diese gemeinsam abzulegen, gibt es verschiedene Datentypen. Die erste und einfachste Form ist der Vektor. Wie wir einen Vektor erstellen und damit rechnen, schauen wir uns im Beispiel an.
# Erstellen eines Vektors
vektor <- c(4, 3, 2, 2, 5)
#Ausgabe des Vektors
vektor
# Zugriff auf das zweite Element
vektor[2]
# Multiplikation mit einer Zahl
vektor * 2 # Alle Werte verdoppeln
# Addition einer Zahl
vektor + 3
# weiterer Vektor
vektor2 <- c(5, 4, 6, 3 ,1)
# Summe zweier Vektoren
vektor + vektor2
- 4
- 3
- 2
- 2
- 5
- 8
- 6
- 4
- 4
- 10
- 7
- 6
- 5
- 5
- 8
- 9
- 7
- 8
- 5
- 6
Man kann auch nur ein Element ändern:
# Definition und Ausgabe des Vektors
vector <- c(3,5,6,7,3)
vector
# Ausgabe von Element an Stelle 2
vector[2]
# Ändern von Element an Stelle 2
vector[2] <- 10
# Ausgabe das geänderten Vektors
vector
- 3
- 5
- 6
- 7
- 3
- 3
- 10
- 6
- 7
- 3
Aufgaben#
Mit
1:8
lässt sich schnell ein Vektor mit den Zahlen \(1,2,...,8\) erstellen. Probieren Sie es aus.Probieren Sie auch
5:19
und40:10
aus.Erstellen Sie einen Vektor mit den (natürlichen) Zahlen von 5 bis 15 und nennen Sie ihn
vec1
Geben Sie
length(vec1)
ein. Was passiert?Geben Sie ein
vec2 <- c(4,6,3,4,6,1,7,6,3,7,8)
und bilden Sie die Summe aus beiden Vektoren, nennen Sie dieses
. Geben Sie nur das 4. Element vons
aus. (Lösung: 12)Quadrieren Sie alle Element von
vec2
und geben Sie diese ausGeben Sie den Befehl
sum(vec2)
ein. Was passiert hier?Summieren sie alle Elemente aus
vec2
und teilen Sie dies durch die Anzahl der Element invec2
. (Geben Sie die Zahlen nicht ein, sondern nutzen Sie die Befehle, die Sie hier kennengelernt haben)Geben Sie
mean(vec2)
ein. Was passiert?Führen Sie die folgenden Schritte nacheinander aus:
Berechnen Sie den Mittelwert von
vec2
und nenne sie diesenm
.Ziehen Sie
m
von allen Werten des Vektorsvec2
ab.Quadrieren Sie alle Werte des neuen Vektors.
Addieren Sie alle Werte des nun entstandenen Vektors.
Teilen Sie das Ergebnis durch „Anzahl der Elemente in
vec2
-1“ (Lösung: 4.6)
# Hier kann gerechnet werden...
Schriftliche Aufgabe 1#
Geben Sie für folgende Merkmale die Messbarkeit (nominal/ordinal/metrisch sowie diskret/stetig) an:
Religionszugehörigkeit
Platzierung bei einem Sportwettkampf
Längengrad auf der Erde
Körpergewicht
Anzahl der Einwohner eines Landes
Alter in Jahren
Blutgruppe
Schriftliche Aufgabe 2#
Bei einer Studie zur Steigerung des Umsatzes in einem Elektrofachgeschäft wurden eine Woche lang stichprobenartig insgesamt 150 Kunden gebeten, die unten aufgeführten Fragen zu beantworten.
(a) Ordnen Sie anhand dieser Studie die Begriffe zu:#
Grundgesamtheit
Merkmalsträger
Zustandsraum
Merkmalsausprägung
Merkmal
(konkrete) Stichprobe
(b) Welche Messbarkeit (nominal, ordinal, stetig) liegt für die einzelnen Merkmale vor? Sind diese Merkmale diskret oder stetig?#
Fragebogen:
Geschlecht? weiblich [ ] männlich [ ]
In welchem Jahr wurden Sie geboren?
Wie ist Ihr Familienstand? verheiratet [ ], ledig [ ], geschieden [ ], verwitwet [ ]
Wie viele Kinder haben Sie?
Wie oft haben Sie im letzten Jahr hier eingekauft?
Wie weit ist der Elektronikfachmarkt von Ihrem Wohnort entfernt (in km)?
Wie sehr sind Sie mit der Mitarbeiterfreundlichkeit zufrieden?
gar nicht [ ]
mittel [ ]
gut [ ]
sehr gut [ ]
Haben Sie schon einmal Gutscheine von uns genutzt?
Schriftliche Aufgabe 3#
Entwerfen Sie einen Fragebogen zum Thema „Studieren in Dresden“ mit insgesamt 6 Fragen. Hierbei sollen jeweils 2 nominal, 2 ordinal und 2 metrisch messbare Merkmale abgefragt werden.