M = read.csv("DatosEquipo7.csv")

# Ver estructura básica
str(M)
## 'data.frame':    3996 obs. of  8 variables:
##  $ entidad: int  1 1 1 1 1 1 1 1 1 1 ...
##  $ p5     : int  0 0 0 0 0 0 4 0 0 0 ...
##  $ p11    : int  0 0 0 0 0 4 0 0 0 0 ...
##  $ p17    : int  0 0 4 0 0 4 0 3 0 3 ...
##  $ p34_2  : int  2 1 1 1 3 1 1 3 3 1 ...
##  $ p34_3  : int  2 2 2 1 3 1 1 3 3 1 ...
##  $ p26    : int  0 0 15 0 0 10 60 15 0 20 ...
##  $ p4     : int  0 0 0 0 0 0 1 0 0 0 ...
summary(M)
##     entidad            p5             p11              p17        
##  Min.   : 1.00   Min.   :0.000   Min.   :0.0000   Min.   :0.0000  
##  1st Qu.: 9.00   1st Qu.:0.000   1st Qu.:0.0000   1st Qu.:0.0000  
##  Median :15.00   Median :0.000   Median :0.0000   Median :0.0000  
##  Mean   :15.66   Mean   :1.359   Mean   :0.9422   Mean   :0.8421  
##  3rd Qu.:21.00   3rd Qu.:3.000   3rd Qu.:1.0000   3rd Qu.:1.0000  
##  Max.   :32.00   Max.   :6.000   Max.   :6.0000   Max.   :6.0000  
##      p34_2           p34_3           p26               p4        
##  Min.   :0.000   Min.   :0.00   Min.   :  0.00   Min.   : 0.000  
##  1st Qu.:1.000   1st Qu.:1.00   1st Qu.:  0.00   1st Qu.: 0.000  
##  Median :1.000   Median :2.00   Median : 20.00   Median : 0.000  
##  Mean   :1.473   Mean   :1.64   Mean   : 27.16   Mean   : 1.305  
##  3rd Qu.:2.000   3rd Qu.:2.00   3rd Qu.: 35.00   3rd Qu.: 2.000  
##  Max.   :3.000   Max.   :3.00   Max.   :360.00   Max.   :70.000
M$p34_2_bin = ifelse(M$p34_2 == 1, "Sí", 
                     ifelse(M$p34_2 == 2, "No", NA))
M$p34_3_bin = ifelse(M$p34_3 == 1, "Sí", 
                     ifelse(M$p34_3 == 2, "No", NA))



#  Motivos de lectura de libros vs padres que leen 
table_libros = table(M$p5, M$p34_2_bin)
cat("Tabla: Motivos de lectura de libros")
## Tabla: Motivos de lectura de libros
print(table_libros)
##    
##       No   Sí
##   0 1313  919
##   1   60  113
##   2   54  129
##   3  120  270
##   4  233  426
##   5  107   67
##   6   10   17
if (sum(table_libros) > 0) {
  cat("\n Chi-cuadrada libros ")
  print(chisq.test(table_libros))
}
## 
##  Chi-cuadrada libros 
##  Pearson's Chi-squared test
## 
## data:  table_libros
## X-squared = 241.28, df = 6, p-value < 2.2e-16
#  Motivos de lectura de revistas vs padres que leían 
table_revistas = table(M$p11, M$p34_3_bin)
cat("\n Tabla: Motivos de lectura de revistas ")
## 
##  Tabla: Motivos de lectura de revistas
print(table_revistas)
##    
##       No   Sí
##   0 1940  830
##   1   55   31
##   2   16   29
##   3  124  116
##   4  351  260
##   5   52   19
##   6    2    2
if (sum(table_revistas) > 0) {
  cat("\n Chi-cuadrada revistas ")
  print(chisq.test(table_revistas))
}
## 
##  Chi-cuadrada revistas
## Warning in chisq.test(table_revistas): Chi-squared approximation may be
## incorrect
## 
##  Pearson's Chi-squared test
## 
## data:  table_revistas
## X-squared = 83.072, df = 6, p-value = 8.275e-16
#  Motivos de lectura de periódicos vs padres 
table_periodicos = table(M$p17, M$p34_2_bin)
cat("\n Tabla: Motivos de lectura de periódicos ")
## 
##  Tabla: Motivos de lectura de periódicos
print(table_periodicos)
##    
##       No   Sí
##   0 1472 1356
##   1   11   12
##   2    5    5
##   3  247  386
##   4  156  180
##   5    3    0
##   6    3    2
if (sum(table_periodicos) > 0) {
  cat("\n Chi-cuadrada periódicos ")
  print(chisq.test(table_periodicos))
}
## 
##  Chi-cuadrada periódicos
## Warning in chisq.test(table_periodicos): Chi-squared approximation may be
## incorrect
## 
##  Pearson's Chi-squared test
## 
## data:  table_periodicos
## X-squared = 39.74, df = 6, p-value = 5.125e-07
#  Gráfica 1 libros 
boxplot(M$p4 ~ M$p34_2_bin,
        main = "Número de libros leídos según si veía a sus padres leer",
        xlab = "¿Veía a sus padres leer?",
        ylab = "Número de libros leídos (p4)",
        col = c("red", "lightblue"),
        border = "gray")

# Añadir medias con puntos
means_p4 = tapply(M$p4, M$p34_2_bin, mean, na.rm = TRUE)
points(1:2, means_p4, pch = 19, col = "black")

#  Boxplot 2 Minutos de lectura (p26) según si los padres le leían 
boxplot(M$p26 ~ M$p34_3_bin,
        main = "Minutos de lectura por sesión según si sus padres le leían",
        xlab = "¿Sus padres le leían?",
        ylab = "Minutos continuos de lectura (p26)",
        col = c("red", "lightblue"),
        border = "gray")

#  Gráfica 3 relación entre p4 y p26 
plot(
  M$p4, M$p26,
  main = "Relación entre libros leídos (p4) y minutos por sesión (p26)",
  xlab = "Libros leídos en el año (p4)",
  ylab = "Minutos por sesión (p26)",
  pch = 19, col = "blue"
)
abline(lm(p26 ~ p4, data = M), col = "red", lwd = 2)

#  Calcular correlación 
cat("Correlación entre p4 y p26 ")
## Correlación entre p4 y p26
print(cor(M$p4, M$p26, use = "complete.obs"))
## [1] 0.4984856