Daten laden

Laden Sie die Data Frames ai und asp vom IPS-Server:

url <- "http://www.phonetik.uni-muenchen.de/~jmh/lehre/Rdf"
ai <- read.table(file.path(url, "ai.txt"))
asp <- read.table(file.path(url, "asp.txt"))

Q & A’s

1. Basics

  • Q1.1: Erstellen Sie einen Vektor namens num, der diese Elemente enthält: 3, 10.15, -39.
num <- c(3, 10.15, -39)
  • Q1.2: Summieren Sie mittels einer Funktion alle Elemente des Vektors num.
sum(num)
## [1] -25.85
  • Q1.3: Multiplizieren Sie jedes Element des Vektors num mit 10 und speichern Sie das Ergebnis in einer Variable namens x.
x <- num * 10
x
## [1]   30.0  101.5 -390.0
  • Q1.4: Erstellen Sie die Schriftzeichen-Variable name, die Ihren Namen enthält.
name <- "Mein Name"
  • Q1.5: Nutzen Sie eine Funktion, um den Inhalt der Variable name drei Mal auszugeben.
rep(name, times = 3)
## [1] "Mein Name" "Mein Name" "Mein Name"
  • Q1.6: Erstellen Sie mit den Funktionen c() und rep() einen Vektor namens buchstaben mit dem Inhalt: “a” “a” “a” “b” “b” “b” “c” “c” “c” “d” “d” “d” “e” “e” “e”.
buchstaben <- rep(c("a", "b", "c", "d", "e"), each = 3)
buchstaben
##  [1] "a" "a" "a" "b" "b" "b" "c" "c" "c" "d" "d" "d" "e" "e" "e"
  • Q1.7: Lassen Sie sich mittels einer Funktion nur die einzigartigen Elemente des Vektors buchstaben ausgeben (d.h. entfernen Sie die Duplikate).
unique(buchstaben)
## [1] "a" "b" "c" "d" "e"
  • Q1.8: Überprüfen Sie, ob “b” und “f” im Vektor buchstaben vorkommen.
c("b", "f") %in% buchstaben
## [1]  TRUE FALSE
  • Q1.9: Erstellen Sie mittels einer Funktion einen Vektor mit dem Inhalt: “10.Z” “11.Z” “12.Z” “13.Z” “14.Z” “15.Z” “16.Z” “17.Z” “18.Z” “19.Z” “20.Z”.
paste(10:20, "Z", sep = ".")
##  [1] "10.Z" "11.Z" "12.Z" "13.Z" "14.Z" "15.Z" "16.Z" "17.Z" "18.Z" "19.Z"
## [11] "20.Z"
  • Q1.10: Erstellen Sie mittels einer Funktion einen Vektor namens z, der folgende Elemente enthält: 1 1 3 3 6 6 1 1 3 3 6 6 1 1 3 3 6 6 1 1 3 3 6 6.
z <- rep(c(1, 3, 6), each = 2, times = 4)
  • Q1.11: Überprüfen Sie, wie häufig die Zahlen 1, 3, und 6 im Vektor z vorkommen.
table(z)
## z
## 1 3 6 
## 8 8 8
  • Q1.12: Erstellen Sie mittels einer Funktion eine Zahlensequenz aus 15 Zahlen, die bei 1 beginnen und bei 35 aufhören.
seq(from = 1, to = 35, length.out = 15)
##  [1]  1.000000  3.428571  5.857143  8.285714 10.714286 13.142857 15.571429
##  [8] 18.000000 20.428571 22.857143 25.285714 27.714286 30.142857 32.571429
## [15] 35.000000
  • Q1.13: Erstellen Sie mittels einer Funktion eine Zahlensequenz von 100 beginnend rückwärts bis 50, wobei die Zahlen jeweils einen Abstand von 3.5 haben sollen. Speichern Sie das Ergebnis in der Variable zahlen ab.
zahlen <- seq(from = 100, to = 50, by = -3.5)
  • Q1.14: Ziehen Sie die Quadratwurzel aus allen Zahlen im Vektor zahlen.
sqrt(zahlen)
##  [1] 10.000000  9.823441  9.643651  9.460444  9.273618  9.082951  8.888194
##  [8]  8.689074  8.485281  8.276473  8.062258  7.842194  7.615773  7.382412
## [15]  7.141428
  • Q1.15: Überprüfen Sie, welche Elemente des Vektors zahlen größer oder gleich 75 sind.
zahlen >= 75
##  [1]  TRUE  TRUE  TRUE  TRUE  TRUE  TRUE  TRUE  TRUE FALSE FALSE FALSE FALSE
## [13] FALSE FALSE FALSE

2. Arbeit mit Data Frames

  • Q2.1: Lassen Sie sich die Dimensionen (Zeilen- und Spaltenzahl) des Data Frames ai ausgeben.
dim(ai)
## [1] 25  3
  • Q2.2: Lassen Sie sich die Spaltennamen von ai ausgeben.
colnames(ai)
## [1] "F1"     "Kiefer" "Lippe"
  • Q2.3: Recherchieren Sie, wie Sie sich den maximalen F1-Wert in ai ausgeben lassen können.
max(ai$F1)
## [1] 1026
  • Q2.4: Addieren Sie die Spalten Lippe und Kiefer aus dem Data Frame ai für jede Beobachtung.
ai$Lippe + ai$Kiefer
##  [1] -50.07267 -53.47186 -54.83670 -53.23168 -52.08584 -50.82153 -54.57992
##  [8] -56.25643 -53.32751 -52.63944 -53.23845 -52.95452 -49.28736 -51.60902
## [15] -55.11833 -52.31741 -49.48521 -52.46772 -55.45897 -52.83634 -54.54290
## [22] -50.81249 -51.74551 -56.71722 -52.26754
  • Q2.5: Subtrahieren Sie 100 von jedem F1-Wert in ai.
ai$F1 - 100
##  [1] 673 187 906 714 714 706 838 905 864 831 826 456 607 729 827 851 675 838 886
## [20] 788 888 550 926 892 796
  • Q2.6: Lassen Sie sich die ersten Zeilen des Data Frames asp mittels einer Funktion ausgeben.
head(asp)
##        d             Wort Vpn Kons Bet
## 1 26.180 Fruehlingswetter k01    t  un
## 2 23.063          Gestern k01    t  un
## 3 26.812           Montag k01    t  un
## 4 14.750            Vater k01    t  un
## 5 42.380            Tisch k01    t  be
## 6 21.560           Mutter k01    t  un
  • Q2.7: Verwenden Sie eine Funktion, um herauszufinden, wie oft die einzelnen Konsonanten in der Spalte Kons des Data Frames asp vorkommen.
table(asp$Kons)
## 
##    k    t 
## 1278 1614