#Codigo para 25-6-18
setwd("/Linguistics/Talks/UNAM/")

#1
muestra <- rnorm(10, mean = 50, sd = 5)
a <- t.test(muestra)$conf.int
attr(a,"conf.level")

  #Usamos t.test para determinar donde están los límites de
  la distribución que caben en un intervalos de confianza
  de 95%.
  
#2
tval = (30-7)/sqrt((43^2)/10 + (25^2)/20)
pt(tval, df=28, lower.tail=FALSE)

  #Calculamos la estadística t de nuestras muestras con un
  valor de p.
  
#3
data <- read.delim("Mixtec_stops_abridged.txt")
data.k <- subset(data, Consonant=="/k/")
data.kw <- subset(data, Consonant=="/kw/")
mean(data.k$VOT)
mean(data.kw$VOT)
sd(data.k$VOT)
sd(data.kw$VOT)
length(data.k$VOT)
length(data.kw$VOT)

  #Abremos los datos de VOT y creamos objetos que contienen
  datos de la consonante /k/ y la consonante /kw/. Se 
  extrae algunos estadísticos descriptivos de cada grupo.

#4
t.test(data.k$VOT, data.kw$VOT)

  #Prueba t de dos muestras con datos diferentes. Cuál es
  la probabilidad que los promedios son diferentes?

#5	Correlación
f1data <- read.delim("F1_data.txt")
summary(f1data)
mujer <- f1data$female
hombre <- f1data$male

par(cex=1.5)
plot(mujer~hombre, main="Valores F1 de mujeres y hombres")
lines(x=c(mean(hombre), mean(hombre)), y=c(200, 1100), lty=2)
lines(x=c(200, 1100), y=c(mean(mujer), mean(mujer)), lty=2)
abline(lm(mujer~hombre))

zhombre <- (hombre - mean(hombre))/sd(hombre)
zmujer <- (mujer - mean(mujer))/sd(mujer)
plot(zmujer~zhombre, main="Valores F1 de mujeres y hombres")
abline(lm(zmujer~zhombre))

#6
B = cor(hombre, mujer)*(sd(hombre)/sd(mujer))
A = mean(hombre) - B*mean(mujer)
linmod = function(x){B*x + A}

  #Código para crear una función en R que contiene nuestro
  model linear para los datos F1. Nótese que B, nuestra 
  pendiente, es el producto de (a) la corelación (r_xy) y 
  (b) el cociente de nuestros desviaciones estandares. Si 
  tenemos el pendiente, podemos encontrar la intersección 
  y.
  
#7
summary(lm(male~female, data=f1data))

  #Código para un modelo linear de datos F1.

#8
lm1 <- lm(male~female, data=f1data)
lm2 <- lm(male~female-1, data=f1data)
summary(lm2)

plot(female~male, main="F1 values for female and male talkers")
lines(x=c(mean(male), mean(male)), y=c(200, 1100), lty=2)
lines(x=c(200, 1100), y=c(mean(female), mean(female)), lty=2)
abline(lm(female~male), lty=1)
abline(lm(female~male-1), lty=2)
text(350, 900, label="Dotted; y = 0.74x + 47.6")
text(350, 850, label="Solid; y = 0.81x")

  #Trazamos la línea de regresión c/s la intersección.

#9
tr.stops <- read.delim("Triqui_stops.csv")
tr.lenis <- subset(tr.stops, Type=="L")
tr.fortis <- subset(tr.stops, Type=="F")

  #El código para importar datos de triqui. La meta es 
  investigar la relación entre el cierre, la soltura, y la   duración de aspiración para oclusivas en Triqui de 
  Itunyoso.
  
#10
  #Debemos calcular MS del tratamiento (consonante). Hay
  cuatro niveles.

data <- read.delim("Mixtec_stops_abridged.txt")
data2 <- subset(data, Consonant!="/kw/")

  #Buscaremos el promedio de VOT para cada oclusiva:
  meanVOT <- mean(data2$VOT)

tapply(data2$VOT, factor(data2$Consonant), mean)

  #El número de observaciones ajustado sería 121.24.

SS.tau = 121.24*sum((25.83356-17.70782)^2, (10.70934-17.70782)^2, (16.73112-17.70782)^2)

  #Si calculararamos el SS del error, necesitaríamos
  agregar 360 desviaciones de nuestros datos. No lo
  hacemos, pero encontramos que el SS_error final = 18588.

  #SS_error = 357*52.06723
	
#11	
  #Calculamos los cuadrados del promedio para cada grupo
  y la estadística F.

MS.tau = SS.tau/2
MS.error = 18588/357
	
Fval = MS.tau/MS.error
pf(135.01, 2, 357, lower.tail=FALSE)

  #Debemos concluir que es muy improbable que podríamos
  producir un valor F como éste de una muestra con estos
  grados de libertad donde los efectos de tratamiento
  serían 0.

#12	
  #Y podemos no más hacer esto:

anova(lm(VOT~Consonant, data=data2))


#13	Running two-way ANOVA on data from Pitt & Shoaf. 
  
ps2 <- read.delim("Pitt_Shoaf2.txt", sep=" ")
anova(lm(rt~position*overlap, data=ps2))

#14	Dibujando las interacciones

ps2$position <- factor(ps2$position, c("early", "mid", "late"), ordered=TRUE)
ps2.0P <- subset(ps2, overlap=="zero")
ps2.3P <- subset(ps2, overlap=="three")
boxplot(rt~position, data=ps2.0P, ylim=c(400, 1400), boxwex=0.5, notch=F, main="Efecto de tiempo de prueba en el experimento y traslapa fonológica")
boxplot(rt~position, data=ps2.3P, add=T, boxwex=0.5, notch=T, col="red")

#15	ANOVA de VOT de mixteco con Category (3 niveles) como otro tratamiento.

data <- read.delim("Mixtec_stops_abridged.txt")
data2 <- subset(data, Consonant!="/kw/")
tapply(data2$VOT, data2$Category, mean)

tapply(data2$VOT, list(factor(data2$Consonant), data2$Category), mean)
anova(lm(VOT~Consonant*Category, data=data2))

data2.id <- subset(data2, Category=="initial.disyllable")
data2.md <- subset(data2, Category=="medial.disyllable")
data2.im <- subset(data2, Category=="initial.monosyllable")

par(mfrow=c(1,3), cex=1)
boxplot(VOT~factor(Consonant), data=data2.id, ylim=c(0, 50), boxwex=0.5, notch=T, main="VOT by place of articulation \n initial disyllables", ylab="VOT (ms)", xlab="Consonant")
boxplot(VOT~factor(Consonant), data=data2.md, ylim=c(0, 50), boxwex=0.5, notch=T, main="VOT by place of articulation \n medial disyllables", ylab="VOT (ms)", xlab="Consonant")
boxplot(VOT~factor(Consonant), data=data2.im, ylim=c(0, 50), boxwex=0.5, notch=T, main="VOT by place of articulation \n initial monosyllables", ylab="VOT (ms)", xlab="Consonant")

#16	Post-hoc t-tests

ps2.e <- subset(ps2, position=="early")
ps2.m <- subset(ps2, position=="mid")
ps2.l <- subset(ps2, position=="late")

t.test(ps2.e$rt, ps2.m$rt)
t.test(ps2.e$rt, ps2.l$rt)
t.test(ps2.m$rt, ps2.l$rt)

#17	Class exercise - Triqui stops, factorial design.

#Examine how Triqui stops vary in closure duration in terms of fortis/lenis categories and consonant. Then, run t-tests on the data to examine where the interactions occur.