# 1.1. F2 der ersten 10 Segmente vowlax.fdat[1:10,2] # 1.2 F1 und F3 vom letzten Segment vowlax.fdat[nrow(vowlax.fdat),c(1,3)] # 1.3 Grundfrequenz Segmente 10, 20, 28 vowlax.fund[c(10, 20, 28),] # 1.4 Grundfrequenz aller "a" Vokale temp = vowlax.l == "a" vowlax.fund[temp,] # 1.5 F2 und F3 aller "I" und "O" Vokale temp = vowlax.l %in% c("I", "O") vowlax.fdat[temp,2:3] # 1.6 F2 der "a" und "E" Vokale Sprecherin "68" temp = vowlax.spkr=="68" & vowlax.l %in% c("a", "E") vowlax.fdat[temp,2] # 1.7 F1-F4 zwischen für die erste Hälfte der Segmente # (zwischen der # Startzeit und zeitlichem Mittelpunkt) dcut(vowlax.fdat, 0, 0.5, prop=T) # 1.8 Grundfrequenz für # den mittleren 50% (zwischen dem 25% und 75% Zeitpunkten) dcut(vowlax.fund, .25, .75, prop=T) # 1.9 dB-RMS zum zeitlichen Mittepunkt dcut(vowlax.rms, .5, prop=T) # 1.10 F1 und F2 der "i:" Vokale zum Segment-Onset temp = vowlax.l == "I" dcut(vowlax.fdat[temp,1:2], 0, prop=T) # 1.11 dB-RMS 15 ms vor dem Segment-Offset dcut(vowlax.rms, end(vowlax.rms)-15) # 1.12 F1 und F3 15 ms # vor dem Segment-Offset # für "a" und "I" Vokale, Sprecher "67" temp = vowlax.spkr == "67" & vowlax.l %in% c("a", "I") dcut(vowlax.fdat[temp,c(1,3)], end(vowlax.fdat[temp,])-15) # 2.1 Grundfrequenz als Funktion # der Zeit vom 10en Segment (Abb. 2.1) plot(vowlax.fund[10,], type="l", ylab="Frequenz (Hz)", xlab="Dauer (ms)") # 2.2 F1 und F2 zusammen als Funktion # der Zeit der ersten 6 Segmente (in einer 2 x 3 Abbildung # (Abb 2.2) par(mfrow=c(2,3)) plot(vowlax.fdat[1:6,1:2], type="b", ylab="Frequenz (Hz)", xlab="Dauer (ms)", contig=F) # 2.3 F2 von "I" und "a" als Funktion der Zeit, # Sprecher "67" (Abb 2.3) par(mfrow=c(1,1)) temp = vowlax.spkr=="67" & vowlax.l %in% c("I", "a") dplot(vowlax.fdat[temp,2], vowlax.l[temp], 0.5, ylab="Frequenz (Hz)", ylim=c(1000, 2500)) # 2.4 F2 von "E" als Funktion der Zeit getrennt für die beiden Sprecher temp = vowlax.l =="E" dplot(vowlax.fdat[temp,2], vowlax.spkr[temp], norm=T, ylab="Frequenz (Hz)", ylim=c(1000, 3000), xlab="Proportionale Dauer") # Inwiefern kann die Abbildung # durch Sprecherunterschiede erklärt werden? # Ja das ist zu erwarten: F2 der Sprecherin ist hoeher. # 2.5 F2 von "a", Sprecher "67" getrennt # für den davorkommenden Kontext "m" und "d" (Abb. 2.5). temp = vowlax.left %in% c("m", "d") & vowlax.l=="a" & vowlax.spkr=="67" dplot(vowlax.fdat[temp,2], vowlax.left[temp], norm=T, ylab="Frequenz (Hz)", xlab="Proportionale Dauer") # Welche phonetischen Faktoren erklären # die Unterschiede vor allem # zwischen proportionale Zeiten 0.0 - 0.4? # Der F2-Lokus, der niedriger ist fuer Labiale im Vergleich # zu Alveolaren. # Erstellen Sie in einer Reihe und 2 # Spalten die folgenden zwei Abbildungen (Abb 3.1): # (a) Die Dauer als Funktion der # F1-Werte zum zeitlichen Mittelpunkt # der "a" Vokalen von Sprecher 67. par(mfrow=c(1,2)) d = dur(vowlax) mid = dcut(vowlax.fdat[,1], .5, prop=T) temp = vowlax.l == "a" & vowlax.spkr == "67" plot(d[temp], mid[temp], xlab="Dauer (ms)", ylab="F1 (Hz)") # Würden Sie sagen, es liegt # eine Beziehung zwischen diesen # beiden Variablen vor? Was könnte die # physiologische Erklärung für diese Beziehung sein? # Ja die scheinen miteinander korreliert zu sein. # F1 ist mit einer groesseren Mundoeffnung und daher # Kiefersenkung korreliert. Je weiter der Kiefer senken # muss, umso laenger dauert es # (da der Kiefer sehr traege ist). # Abgesehen von dieser Abb. dies ist auch zum Teil der # Grund weshalb zB hohe Vokale kuerzer als offene sind. # (b) Ellipse Abbildungen aller # Diphthonge für Sprecherin 68 # für die Werte zum 9/10 der gesamten # Dauer (Zeitpunkt 90%) entnommen. dip9 = dcut(dip.fdat[,1:2], 0.9, prop=T) temp = dip.spkr=="68" eplot(dip9[temp,], dip.l[temp], centroid=T, form=T, xlab="F2 (Hz)", ylab="F1 (Hz)") # Welche phonetischen Faktoren # könnten diese Unterschiede # zwischen den Diphthongen in dieser Abbildungen verursachen? # Der zweite Komponent variiert # in der Frontierung und Lippenrundung: # vorne und ungerundet fuer [I] hinten # vorne und gerundet fuer [Y] # hinten und gerundet fuer [U]. # Und vordere und ungerundete Vokalen sind mit hohem # F2 assoziiert. # 4 # (a) eine zweispaltige Matrix der F1 und F2 Werte den "aI" und "aU" # Diphthongen 1/3 der Gesamtdauer nach dem Diphthong-Onset entnommen für # Sprecherin 68. Erstellen # Sie einen Vektor der Diphthong-Etikettierungen, # der zu dieser Matrix parallel ist. temp = dip.spkr == "68" & dip.l %in% c("aI", "aU") dip3 = dcut(dip.fdat[temp,1:2], 1/3, prop=T) dip3.l = dip.l[temp] # (b) ebenfalls eine zweispaltige Matrix # der F1 und F2 Werte dem zeitlichen # Mittelpunkt von "a" Vokalen entnommen # auch für Sprecherin 68. Erstellen Sie # einen Vektor der Etikettierungen, # der zu dieser Matrix parallel ist. temp = vowlax.l == "a" & vowlax.spkr == "68" aform = dcut(vowlax.fdat[temp,1:2], .5, prop=T) aform.l = vowlax.l[temp] # (c) Indem Sie die rbind() und # c() Funktionen auf die Matrizen und # Vektoren in (a) und (b) anbringen, # erstellen Sie in einer Abbildung # (Abb. 4) im F2 x F1 Raum die Werte # und Ellipsen dieser "ai", "aU", und "a" Daten. beide = rbind(dip3, aform) beide.l = c(dip3.l, aform.l) par(mfrow=c(1,1)) eplot(beide, beide.l, form=T, dopoints=T, xlab="F2 (Hz)", ylab="F1 (Hz)") # Die Abbildung zeigt, dass "aI" und "aU" etwas # nach links und rechts im Vergleich zu "a" # in diesem Raum verteilt sind. # Welche phonetischen Faktoren könnten # diesen Unterschieden zugrunde liegen? # Der zweite Komponent vom Diphthong. # 5.2 Die Standardabweichung # von F2 für die ersten # 10 Segmente der Diphthonge # in der Trackdatei dip.fdat trapply(dip.fdat[1:20,2], sd, simplify=T) # 5.3 Das f0-Maximum in Segmenten # 14, 19, 23 der Diphthonge # in der Trackdatei vowlax.fund trapply(vowlax.fund[c(14, 19, 23)], max, simplify=T) # 5.4 Der F1-Median in dem # zeitlichen ersten Drittel der Diphthonge # (einen Wert pro Diphthong) trapply(dcut(dip.fdat[,1], 0, 1/3, prop=T), median, simplify=T) # 5.5 Der F2-Bereich # für ein Intervall ± 10 ms # jenseits des zeitlichen Mittelpunkts # vom Vokal in der Trackdatei vowlax.fdat m = (start(vowlax.fdat)+end(vowlax.fdat) )/2 trapply(dcut(vowlax.fdat[,2], m - 10, m+10), range, simplify=T) # 5.6 Das dB-RMS Maximum für # "a" Vokale von Sprecherin 68 # in der Trackdatei vowlax.rms temp = vowlax.l=="a" & vowlax.spkr == "68" trapply(vowlax.rms[temp,], max, simplify=T) # 5.7 Erstellen Sie eine neue Trackdatei F2 - F1 (F2 minus F1) # aus der Trackdatei dip.fdat und # berechnen Sie den Mittelwert davon # (einen Wert pro Segment) # für den Diphthong "aU" # (dip.l ist der Vektor der Etikettierungen, der dazu parallel ist). neu = dip.fdat[,2]-dip.fdat[,1] temp = dip.l == "aU" trapply(neu[temp,], mean, simplify=T) # 5.8 mfun <- function(daten, fun=max) { zeiten = tracktimes(daten) temp = daten == fun(daten) zeiten[temp] } # (a) Berechnen Sie die Zeitpunkte, zu denen F2 ein Maximum hat in allen # Segmenten von vowlax.fdat (einen Zeitpunkt pro Segment). zeiten = trapply(vowlax.fdat[,2], mfun, simplify=T) # (b) Erstellen Sie eine Matrix # der F1 und F2 Werte (410 Reihen, # eine Reihe pro Segment und zwei Spalten), # die zu diesen Zeitpunkten vorkommen (siehe 4.2, S. 10). dcut(vowlax.fdat[,1:2], zeiten) # 5.9 dreifun <- function(x, k=3) { mean(mean(x[1:k])) } # Berechnen Sie den Mittelwert # der ersten 3 Frames von F2 # für die ersten 20 Segmente # von vowlax.fdat # (also einen Wert, den Mittelwert der ersten 3 Frames, pro Segment). trapply(vowlax.fdat[1:20,2], dreifun, simplify=T)