#---- 2.8 ----

#a
#Metodo c()
estudiante=c(1,2,3,4,5,6,7,8,9,10)
p1=c(3,3,3,4,3,4,3,4,4,3)
p2=c(5,5,2,2,5,2,2,5,5,2)
p3=c(1,3,1,3,3,3,1,3,1,1)

encuesta=data.frame(estudiante, p1, p2, p3)
table(encuesta)

#Metodo scan()
write.table(estudiante,                    
            file = "estudiantes.txt",
            row.names = FALSE)

getwd() #guarda como directorio

w=scan("estudiantes.txt", what = "character")  
print(w)

#-----

write.table(p1,                   
            file = "p1.txt",
            row.names = FALSE)

getwd() #guarda como directorio

x=scan("p1.txt", what = "character")  
print(x)

#-----

write.table(p2,                    
            file = "p2.txt",
            row.names = FALSE)

getwd() #guarda como directorio

y=scan("p2.txt", what = "character")  
print(y)

#-----

write.table(p3,                    
            file = "p3.txt",
            row.names = FALSE)

getwd() #guarda como directorio

z=scan("p3.txt", what = "character")  
print(z)

#Metodo read.table ()
read.table(file = "estudiantes.txt", col.names = "Estudiantes", skip = 1)
read.table(file = "p1.txt", col.names = "Pregunta 1", skip = 1)
read.table(file = "p2.txt", col.names = "Pregunta 2", skip = 1)
read.table(file = "p3.txt", col.names = "Pregunta 3", skip = 1)

#Metodo data.entry ()
encuestaE <- data.frame(
  Estudiante = 1:10,
  P1 = c(3, 3, 3, 4, 3, 4, 3, 4, 4, 3),
  P2 = c(5, 5, 2, 2, 5, 2, 2, 5, 5, 2),
  P3 = c(1, 3, 1, 3, 3, 3, 1, 3, 1, 1)
)

data.entry(encuestaE)

#b
#Tablas preguntas
tablap1=data.frame(estudiante,p1)
table(tablap1)

tablap2=data.frame(estudiante,p2)
table(tablap2)

tablap3=data.frame(estudiante,p3)
table(tablap3)

#c
#Realizar las tablas de contingencias entre p1 y p2
tabla_p1_p2 <- table(p1,p2)
tabla_p1_p2

#Realizar las tablas de contingencias entre p1 y p3
tabla_p1_p3 <- table(p1, p3)
tabla_p1_p3

#Realizar las tablas de contingencias entre p3 y p2
tabla_p2_p3 <- table(p2, p3)
tabla_p2_p3

#Tabla de contingencia cruzada para 3 preguntas:
tabla_p1_p2_p3 <- xtabs(~ p1 + p2 + p3)
tabla_p1_p2_p3


#d
d=table(p2,p3)
barplot(d, main = "Gráfico de barras apiladas",axes = TRUE, names.arg = c("P2", "P3"), col = c("#FB6A4A","#FED976"))

#e
e1= sum(p1)
e2= sum(p2)
e3=sum(p3)
et=c(e1,e2,e3)
barplot(et, main = "Gráfico de barras",axes = TRUE, names.arg = c("P1", "P2", "P3"), col = c("#FB6A4A","#FB6A4A","#FB6A4A"))

#---- 2.9 ----

x=c(rnorm(50))
y=c(rnorm(50))

x.test=shapiro.test(x)  # Prueba Shapiro Wilk
print(x.test)

y.test=shapiro.test(y)
print(y.test)

#podemos encontrar que los datos se encuentran normalizados, debido a que su p-value, es mayor que 0.5

#b
test <- t.test(x,y) # Prueba t de Student
print(test)

# ---- 2.10 ----

#a
x=c(rnorm(50))
y=rbinom(n =50, size = 50, prob = 0.1)

#b
x.test=shapiro.test(x)  # Prueba Shapiro Wilk
print(x.test)

#se puede encontrar que los datos se encuentran normalizados, debido a que su p-value, es mayor que 0.5

y.test=shapiro.test(y)
print(y.test)

#como el valor de p-value es menor a 0.5, por lo tanto se define que los valores no se encuentran distribuidos normalmente. 

#c
test <- t.test(x,y) # Prueba t de Student
print(test)