Ejercicio 1

Se sabe que el dióxido de carbono tiene un efecto crítico en el crecimiento microbiológico. Cantidades pequeñas de CO2 estimulan el crecimiento de muchos microorganismos, mientras que altas concentraciones inhiben el crecimiento de la mayor parte de ellos. Este último efecto se utiliza comercialmente cuando se almacenan productos alimenticios perecederos. Se realizó un estudio para investigar el efecto de CO2 sobre la tasa de crecimiento de Pseudomonas fragi, un corruptor de alimentos. Se administró dióxido de carbono a cinco presiones atmósfericas diferentes. La respuesta anotada es el cambio porcentual en la masa celular después de un tiempo de crecimiento de una hora. Se utilizaron diez cultivos en cada nivel. Se obtuvieron los siguientes datos:

“datos”
“datos”
#install.packages("readxl")#solo una vez
library(readxl)
ejercicio1=read_excel("D:/Usuario/Desktop/exp/ejercicio1.xlsx")
ejercicio1#paravisualizarelejercicio1

Conteo de valores

conteo_valoresmetodo=table(ejercicio1$metodo)
conteo_valoresmetodo
## 
##  A  B  C  D  E 
## 10 10 10 10  9

Medidas descriptivas de la variable dependiente

#install.packages("summarytools")# solo una vez
library(summarytools)
summarytools::descr(ejercicio1[,1])# todas las filas primera columna ejercicio1[,1]
## Descriptive Statistics  
## ejercicio1$Desgaste  
## N: 49  
## 
##                     Desgaste
## ----------------- ----------
##              Mean      37.28
##           Std.Dev      15.63
##               Min       7.80
##                Q1      24.10
##            Median      38.30
##                Q3      49.90
##               Max      64.60
##               MAD      18.68
##               IQR      25.80
##                CV       0.42
##          Skewness       0.10
##       SE.Skewness       0.34
##          Kurtosis      -1.14
##           N.Valid      49.00
##         Pct.Valid     100.00

En general, los datos del desgaste están distribuidos normalmente, con una media de 37.28 y una desviación estándar de 15.63. El 25% de los valores de desgaste son menores que 24.10, el 50% son menores que 38.30 y el 75% son menores que 49.90. El valor máximo del desgaste es de 64.60, que es un valor atípico.

Resultados descriptivos

# Calcular estadísticas descriptivas por categoría
resultados_descriptivos <- aggregate(Desgaste ~ metodo, data = ejercicio1, summary)
ejercicio1$Desgaste
##  [1] 62.6 59.6 64.5 59.3 58.6 64.6 50.9 56.2 52.3 62.8 50.9 44.3 47.5 49.5 48.5
## [16] 50.4 35.2 49.9 42.6 41.6 45.5 41.1 29.8 38.3 40.2 38.5 30.2 27.0 40.0 33.9
## [31] 29.5 22.8 19.2 20.6 29.2 24.1 22.6 32.7 24.4 29.6 24.9 17.2  7.8 10.5 17.8
## [46] 22.1 22.6 16.8 15.9
# Imprimir los resultados descriptivos
print(resultados_descriptivos)
##   metodo Desgaste.Min. Desgaste.1st Qu. Desgaste.Median Desgaste.Mean
## 1      A      50.90000         56.80000        59.45000      59.14000
## 2      B      35.20000         43.02500        48.00000      46.04000
## 3      C      27.00000         31.12500        38.40000      36.45000
## 4      D      19.20000         22.65000        24.25000      25.47000
## 5      E       7.80000         15.90000        17.20000      17.28889
##   Desgaste.3rd Qu. Desgaste.Max.
## 1         62.75000      64.60000
## 2         49.80000      50.90000
## 3         40.15000      45.50000
## 4         29.42500      32.70000
## 5         22.10000      24.90000

metodo Desgaste.Min. Desgaste.1st Qu. Desgaste.Median Desgaste.Mean 1 A 50.90000 56.80000 59.45000 59.14000 2 B 35.20000 43.02500 48.00000 46.04000 3 C 27.00000 31.12500 38.40000 36.45000 4 D 19.20000 22.65000 24.25000 25.47000 5 E 7.80000 15.90000 17.20000 17.28889 Desgaste.3rd Qu. Desgaste.Max. 1 62.75000 64.60000 2 49.80000 50.90000 3 40.15000 45.50000 4 29.42500 32.70000 5 22.10000 24.90000

Método A

El método A tiene la media más alta, con 59.14. También tiene el rango intercuartílico (IQR) más alto, de 62.75. Esto indica que hay una mayor dispersión de los valores de desgaste para el método A que para los otros métodos.

Método B

El método B tiene la media más baja, con 46.04. También tiene el rango intercuartílico más bajo, de 49.80. Esto indica que los valores de desgaste para el método B están más concentrados alrededor de la media.

Método C

El método C tiene la mediana más alta, con 38.40. Esto significa que la mitad de los valores de desgaste para el método C son iguales o superiores a 38.40.

Método D

El método D tiene el valor mínimo más bajo, con 19.20. Esto indica que el método D es el más eficiente en términos de desgaste.

Método E

El método E tiene el valor máximo más bajo, con 24.90. Esto indica que el método E es el menos eficiente en términos de desgaste. ANOVA

# Realizar el ANOVA
modelo_anova <- aov(Desgaste ~ metodo, data = ejercicio1)
# Resumen del ANOVA
resumen_anova <- summary(modelo_anova)
# Imprimir el resumen del ANOVA
print(resumen_anova)
##             Df Sum Sq Mean Sq F value Pr(>F)    
## metodo       4  10544  2636.1   98.03 <2e-16 ***
## Residuals   44   1183    26.9                   
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

El valor de F (98.03) es mayor que el valor crítico de F tabulado (3.841), lo que significa que hay evidencia de que las medias de los cuatro métodos son diferentes. El valor p (<2e-16) es mucho menor que el nivel de significación de 0.05, lo que confirma que las diferencias entre las medias no son producto del azar.

Por lo tanto, se puede concluir que al menos uno de los métodos es significativamente diferente de los demás en términos del tiempo de respuesta.

#Crear el diagrama de cajas por categorias
boxplot(ejercicio1$Desgaste ~ ejercicio1$metodo, data = ejercicio1, col = c("red", "blue", "green","orange"), ylab = "Cantidad de CO2", xlab = "Presión")

\(H_0: \mu_A=\mu_B=\mu_C=\mu_D=\mu_E\) \(H_a: \mu_i\neq\mu_j\) para \(i\neq j\) Como se puede observar en el valor de P para el analisis anova, la hipotesis nula se rechaza, por ende la media de los tratamientos no es igual, por lo menos existe una diferente.

TukeyHSD(modelo_anova)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = Desgaste ~ metodo, data = ejercicio1)
## 
## $metodo
##           diff       lwr        upr     p adj
## B-A -13.100000 -19.69569  -6.504311 0.0000106
## C-A -22.690000 -29.28569 -16.094311 0.0000000
## D-A -33.670000 -40.26569 -27.074311 0.0000000
## E-A -41.851111 -48.62754 -35.074685 0.0000000
## C-B  -9.590000 -16.18569  -2.994311 0.0014103
## D-B -20.570000 -27.16569 -13.974311 0.0000000
## E-B -28.751111 -35.52754 -21.974685 0.0000000
## D-C -10.980000 -17.57569  -4.384311 0.0002150
## E-C -19.161111 -25.93754 -12.384685 0.0000000
## E-D  -8.181111 -14.95754  -1.404685 0.0108904

La diferencia entre las medias de los métodos A y E es significativa al nivel de 0.05. Esto significa que hay una probabilidad del 95% de que la diferencia entre las medias de los métodos A y E no se deba al azar. En otras palabras, es probable que el método E tenga un desgaste significativamente mayor que el método A. La diferencia entre las medias de los métodos B, C y D y el método E es también significativa al nivel de 0.05. Esto significa que estos métodos también tienen un desgaste significativamente mayor que el método E. La diferencia entre las medias de los métodos B y C, B y D, y C y D es significativa al nivel de 0.01. Esto significa que hay una probabilidad del 99% de que la diferencia entre las medias de estos métodos no se deba al azar. En otras palabras, es probable que estos métodos tengan un desgaste significativamente diferente entre sí.

plot(TukeyHSD(modelo_anova))

library(agricolae)
metodos.Duncan <-duncan.test(modelo_anova, trt = "metodo", group = T, console = T)
## 
## Study: modelo_anova ~ "metodo"
## 
## Duncan's new multiple range test
## for Desgaste 
## 
## Mean Square Error:  26.89052 
## 
## metodo,  means
## 
##   Desgaste      std  r       se  Min  Max    Q25   Q50    Q75
## A 59.14000 4.804674 10 1.639833 50.9 64.6 56.800 59.45 62.750
## B 46.04000 5.052656 10 1.639833 35.2 50.9 43.025 48.00 49.800
## C 36.45000 5.933942 10 1.639833 27.0 45.5 31.125 38.40 40.150
## D 25.47000 4.483315 10 1.639833 19.2 32.7 22.650 24.25 29.425
## E 17.28889 5.566068  9 1.728536  7.8 24.9 15.900 17.20 22.100
## 
## Groups according to probability of means differences and alpha level( 0.05 )
## 
## Means with the same letter are not significantly different.
## 
##   Desgaste groups
## A 59.14000      a
## B 46.04000      b
## C 36.45000      c
## D 25.47000      d
## E 17.28889      e
#metodo <- duncan.test(model, "virus", main = "yield of sweetpotato, Dealt with different virus")
plot(metodos.Duncan, variation="IQR" )

Existe una diferencia estadísticamente significativa en las medias de todos los tratamientos.

library(car)
## Loading required package: carData
## Loading required package: carData
residuos<-residuals(modelo_anova) #Creando un objeto llamado residuos que contiene los residuos el modelo

par(mfrow=c(1,3)) #Para dividir el área del gráfico en dos partes (una fila y dos columnas)

dplot<-density(residuos) #Creando un objeto llamado dplot que recibe un Density_Plot de los residuos

plot(dplot,#Graficando el objeto dplot
      main="Curva de densidad observada", #Título principal de la gráfica
      xlab = "Residuos", #Etiqueta del eje x
      ylab = "Densidad") #Etiqueta del eje y
polygon(dplot, #Añadiendo el poligono
        col = "purple", #Definiendo el color del poligono
        border = "black") #Color del borde del poligono

qqPlot(residuos, #Un gráfico Cuantil-Cuantil de los residuos
       pch =20, #Forma de los puntos
       main="QQ-Plot de los residuos", #Título principal
       xlab = "Cuantiles teoricos",  #Etiqueta eje x
       ylab="Cuantiles observados de los residuos") #Etiqueta eje y
## [1] 17 43
mtext(side=3, at=par("usr")[1], adj=0.7, cex=0.6, col="gray", line=-21, #Posición del texto
      text=paste("Karen Buitrago  --", #Texto
                 format(Sys.time(), 
                "%d/%m/%Y %H:%M:%S --"), #Fecha y Hora
                 R.version.string)) #Versión de R
boxplot(residuos, col = c("red"), ylab = "residuos", main="Box-plot  de los residuos")

Se puede observar que la curva de los residuos tiene una distribución relativamente normal, la grafica q-q cuenta con una distrubución normal al igual que el diagrama de cajas lo que indica una distribución normal.

$H_0:: Los residuos de la variable desgaste se distribuyen normalmente con media cero y varianza constante ei N(0,1) .

$H_a: los residuos de la variable desgaste no siguen la distribución normal.

shapiro.test(residuals(modelo_anova)) #Prueba Shapiro-Wilk para los residuos de la variable
## 
##  Shapiro-Wilk normality test
## 
## data:  residuals(modelo_anova)
## W = 0.95904, p-value = 0.08651

El valor W es 0,95904 y el valor p es 0,08651. El valor p es la probabilidad de obtener una estadística de prueba al menos tan extrema como la observada, suponiendo que la hipótesis nula es verdadera. En este caso, el valor p es mayor que 0,05, que es el nivel de significancia estándar. Por lo tanto, no podemos rechazar la hipótesis nula de que los datos están distribuidos normalmente.

boxplot(residuos ~ ejercicio1$metodo, 
        main="Boxplot de Residuos por método de ensamble", 
        xlab="Metodo de ensamble",
        col="yellow",
        ylab ="Residuos")

library(car)
color_1 <-colorRampPalette(c("yellow ", "blue", "yellow"))


plot(residuos, main = "Prueba de independencia", pch=20,cex = 2, col=color_1(120), ylab = "Residuos", xlab = " ")

En la grafica anterior se observan dispersos los puntos sin seguir un patron, esto es un indicio de homogeneidad de varianzas

\(H_0: Losresiduos de la variable desgaste son iguales para los ditintos métodos de ensamble.\)

\(H_a: Existen por lo menos dos varianzas distintas para los ditintos métodos de ensamble.\)

library(stats)
bartlett.test(residuos ~ ejercicio1$metodo) #Esta prueba requiere que el diseño se balanceado (el número de repeticiones debe ser igual para cada tratamiento)
## 
##  Bartlett test of homogeneity of variances
## 
## data:  residuos by ejercicio1$metodo
## Bartlett's K-squared = 0.86178, df = 4, p-value = 0.93

Se acepta la hipotesis nula de acuerdo al p valor el cual es 0.93

library(stats)
leveneTest(residuos ~ ejercicio1$metodo)
## Warning in leveneTest.default(y = y, group = group, ...): group coerced to
## factor.

De acuerdo al valor arrojado por la prueba de levene, valor de p (0.9654) mayor a 0.05 se acepta la hipótesis nula, por lo que existe homogeneidad de varianzas.

durbinWatsonTest(modelo_anova) 
##  lag Autocorrelation D-W Statistic p-value
##    1    -0.008667075      2.005586   0.548
##  Alternative hypothesis: rho != 0

El estadístico de prueba de Durbin-Watson es 2.005586, que está cerca de 2. Esto sugiere que no hay autocorrelación significativa en los residuos de tu modelo de regresión. Sin embargo, el valor p para la prueba es 0.578, que no es estadísticamente significativo al nivel de 0.05 por lo que existe independencia de residuos.

Ejercicio 2

Se hace un estudio sobre la efectividad de tres marcas de spray para matar moscas.Para ello, cada producto se aplica a un grupo de 100 moscas, y se cuenta el número de moscas muertas expresado en porcentajes. Se hacen seis réplicas y los resultados obtenidos se muestran a continuación.

#install.packages("readxl")#solo una vez
library(readxl)
ejercicio2=read_excel("D:/Usuario/Desktop/exp/ejercicio2.xlsx")
ejercicio2#paravisualizarelejercicio2

Conteo de valores

conteo_valoresSpray=table(ejercicio2$Spray)
conteo_valoresSpray
## 
## A B C 
## 6 6 6

Medidas descriptivas de la variable dependiente

#install.packages("summarytools")#solounavez
library(summarytools)
summarytools::descr(ejercicio2[,1])#todaslasfilasprimeracolumnaejercicio2[,1]
## Descriptive Statistics  
## ejercicio2$Moscas  
## N: 18  
## 
##                     Moscas
## ----------------- --------
##              Mean    63.67
##           Std.Dev     8.01
##               Min    50.00
##                Q1    58.00
##            Median    64.50
##                Q3    70.00
##               Max    75.00
##               MAD     8.90
##               IQR    11.50
##                CV     0.13
##          Skewness    -0.25
##       SE.Skewness     0.54
##          Kurtosis    -1.33
##           N.Valid    18.00
##         Pct.Valid   100.00

En general, los datos del número de moscas están distribuidos normalmente, con una media de 63.67 y una desviación estándar de 8.01. El 25% de los valores del número de moscas son menores que 58.00, el 50% son menores que 64.50 y el 75% son menores que 70.00.

El coeficiente de variación del número de moscas es de 0.13, lo que indica que la variabilidad del número de moscas es baja. Esto significa que hay una pequeña dispersión de los valores del número de moscas alrededor de la media.

Resultados descriptivos

# Calcular estadísticas descriptivas por categoría
resultados_descriptivos <- aggregate( Moscas ~ Spray, data =ejercicio2, summary)
# Imprimir los resultados descriptivos
print(resultados_descriptivos)
##   Spray Moscas.Min. Moscas.1st Qu. Moscas.Median Moscas.Mean Moscas.3rd Qu.
## 1     A    62.00000       65.50000      69.50000    69.00000       72.75000
## 2     B    50.00000       53.50000      57.00000    59.16667       65.75000
## 3     C    51.00000       58.75000      62.50000    62.83333       67.75000
##   Moscas.Max.
## 1    75.00000
## 2    70.00000
## 3    74.00000

Spray Moscas.Min. Moscas.1st Qu. Moscas.Median Moscas.Mean Moscas.3rd Qu. 1 A 62.00000 65.50000 69.50000 69.00000 72.75000 2 B 50.00000 53.50000 57.00000 59.16667 65.75000 3 C 51.00000 58.75000 62.50000 62.83333 67.75000 Moscas.Max. 1 75.00000 2 70.00000 3 74.00000

Spray A

El spray A tiene la media más alta, con 69.00. También tiene el rango intercuartílico (IQR) más alto, de 7.25. Esto indica que hay una mayor dispersión de los valores de moscas para el spray A que para los otros sprays.

Spray B

El spray B tiene la media más baja, con 59.16. También tiene el rango intercuartílico más bajo, de 2.25. Esto indica que los valores de moscas para el spray B están más concentrados alrededor de la media.

Spray C

El spray C tiene la mediana más alta, con 62.83. Esto significa que la mitad de los valores de moscas para el spray C son iguales o superiores a 62.83.

ANOVA

# Realizar el ANOVA
modelo_anova <- aov(Moscas ~ Spray, data = ejercicio2)
# Resumen del ANOVA
resumen_anova <- summary(modelo_anova)
# Imprimir el resumen del ANOVA
print(resumen_anova)
##             Df Sum Sq Mean Sq F value Pr(>F)  
## Spray        2  296.3  148.17   2.793 0.0931 .
## Residuals   15  795.7   53.04                 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

• Formule la hipótesis adecuada y el modelo estadístico

\(H_0: \mu_A=\mu_B=\mu_C\) \(H_a: \mu_i\neq\mu_j\) para \(i\neq j\)

El modelo estadístico es un modelo completamente al azar o ANOVA.

• ¿Existe diferencia entre la efectividad promedio de los productos en spray?

Según la media existe una diferencia notable en la efectividad promedio de los sprays, ya que el spray A cuenta con un promedio mayor de efectividad, a comparación del spray B y C. Por otra parte, según el análisis ANOVA el valor de P es mayor a 0.05 lo que indicaría la comprobación de la hipótesis nula, siendo así no existiría diferencia entre la efectividad promedio de los productos spray.

• ¿Hay algún spray mejor? Argumente su respuesta. Como se mencionó en la respuesta anterior, la media de la efectividad promedio del spray A es notablemente mayor que la del spray B y C. Según el valor de P, no existe ningún spray mejor.

• Dé un intervalo al 95% de confianza para la efectividad promedio (porcentaje) de cada una de las marcas.

# Calcular intervalos de confianza al 95% para cada marca (A, B y C)
intervalos_confianza = confint(modelo_anova, level = 0.95)
# Agregar un tercer elemento al vector de nombres de marcas
nombres_marcas = c("A", "B", "C")
# Asignar nombres a las filas de la matriz de intervalos de confianza
rownames(intervalos_confianza) = nombres_marcas
# Imprimir los intervalos de confianza
print(intervalos_confianza)
##       2.5 %     97.5 %
## A  62.66248 75.3375206
## B -18.79594 -0.8707257
## C -15.12927  2.7959409

• Dibuje las gráficas de medias y los diagramas de caja simultáneos, después interprételos.

# Crear el diagrama de cajas por categorías
boxplot(ejercicio2$Moscas ~ ejercicio2$Spray, data = ejercicio2, col = c("purple", "pink", "lightblue"), ylab = "Moscas", xlab = "Spray")

Como se puede observar en la gráfica, el spray A cuenta con datos menos dispersos ya que en las réplicas del tratamiento se obtuvieron resultados relativamente similares con una media de 69 por ende se puede concluir que la efectividad de este no es tan variable como la de los otros tratamientos, en el caso del spray B cuenta con resultados más dispersos ya que su mínimo es 50 y su máximo es 70, con una media de 59, por ultimo se observa el spray C, el cual es el que cuenta con una mayor dispersión de datos ya que su mínimo es 51 y su máximo 64. Este cuenta con una media de 62 pero con efectividad mas variable.

library ( "gplots")
## 
## Attaching package: 'gplots'
## The following object is masked from 'package:stats':
## 
##     lowess
plotmeans(Moscas ~ Spray, data =ejercicio2, frame =FALSE,
          xlab = "Spray" , ylab = "Moscas",
          main= "Grafico de medias con 95% IC" , cex.axis=0.6)
## Warning in plot.xy(xy.coords(x, y), type = type, ...): "frame" is not a
## graphical parameter
## Warning in axis(1, at = 1:length(means), labels = legends, ...): "frame" is not
## a graphical parameter
## Warning in plot.xy(xy.coords(x, y), type = type, ...): "frame" is not a
## graphical parameter

"EDA con libreria ggpubr"
## [1] "EDA con libreria ggpubr"
"Box plot"
## [1] "Box plot"
library ( "ggpubr")
## Loading required package: ggplot2

En la gráfica se puede observar que la media del tratamiento A es mas alta que la del tratamiento B y C, por tanto se puede concluir que en promedio del tratamiento A es mas efectivo contra las moscas.

Ejercicio 3

En un centro de investigación se realiza un estudio para comparar varios tratamientos que, al aplicarse previamente a los frijoles crudos, reducen su tiempo de cocción. Estos tratamientos son a base de bicarbonato de sodio (NaHCO3 ) y cloruro de sodio o sal común (NaCl). El primer tratamiento es el de control, que consiste en no aplicar ningún tratamiento. El tratamiento T2 es el remojo en agua con bicarbonato de sodio, el T3 es remojar en agua con sal común y el T4 es remojar en agua con una combinación de ambos ingredientes en proporciones iguales. La variable de respuesta es el tiempo de cocción en minutos. Los datos se muestran en la siguiente tabla:

#install.packages("readxl")#solo una vez
library(readxl)
ejercicio3=read_excel("D:/Usuario/Desktop/exp/ejercicio3.xlsx")
ejercicio3#paravisualizarelejercicio3

Conteo de valores

conteo_valoresTratamiento=table(ejercicio3$Tratamiento)
conteo_valoresTratamiento
## 
##       A       B       C Control 
##       7       7       7       7

Medidas descriptivas de la variable dependiente

#install.packages("summarytools")#solounavez
library(summarytools)
summarytools::descr(ejercicio3[,1])#todaslasfilasprimeracolumnaejercicio3[,1]
## Descriptive Statistics  
## ejercicio3$Tiempo  
## N: 28  
## 
##                     Tiempo
## ----------------- --------
##              Mean   108.54
##           Std.Dev    59.48
##               Min    55.00
##                Q1    70.50
##            Median    82.00
##                Q3   146.00
##               Max   214.00
##               MAD    18.53
##               IQR    46.75
##                CV     0.55
##          Skewness     1.01
##       SE.Skewness     0.44
##          Kurtosis    -0.87
##           N.Valid    28.00
##         Pct.Valid   100.00

En general, los datos del tiempo están distribuidos normalmente, con una media de 108.54 y una desviación estándar de 59.48. El 25% de los valores del tiempo son menores que 70.50, el 50% son menores que 82.00 y el 75% son menores que 146.00.El coeficiente de variación del tiempo es de 0.55, lo que indica que la variabilidad del tiempo es alta. Esto significa que hay una gran dispersión de los valores del tiempo alrededor de la media.

Resultados descriptivos

# Calcular estadísticas descriptivas por categoría
resultados_descriptivos <- aggregate( Tiempo ~ Tratamiento, data =ejercicio3, summary)
# Imprimir los resultados descriptivos
print(resultados_descriptivos)
##   Tratamiento Tiempo.Min. Tiempo.1st Qu. Tiempo.Median Tiempo.Mean
## 1           A    74.00000       75.50000      78.00000    78.85714
## 2           B    55.00000       59.00000      63.00000    61.42857
## 3           C    79.00000       83.00000      85.00000    85.57143
## 4     Control   200.00000      205.50000     208.00000   208.28571
##   Tiempo.3rd Qu. Tiempo.Max.
## 1       82.00000    85.00000
## 2       63.50000    67.00000
## 3       88.50000    92.00000
## 4      212.50000   214.00000

Tratamiento Tiempo.Min. Tiempo.1st Qu. Tiempo.Median Tiempo.Mean 1 A 74.00000 75.50000 78.00000 78.85714 2 B 55.00000 59.00000 63.00000 61.42857 3 C 79.00000 83.00000 85.00000 85.57143 4 Control 200.00000 205.50000 208.00000 208.28571 Tiempo.3rd Qu. Tiempo.Max. 1 82.00000 85.00000 2 63.50000 67.00000 3 88.50000 92.00000 4 212.50000 214.00000

Tratamiento A

El tratamiento A tiene la media más baja, con 78.85. También tiene el rango intercuartílico (IQR) más bajo, de 7.00. Esto indica que los valores de tiempo para el tratamiento A están más concentrados alrededor de la media.

Tratamiento B

El tratamiento B tiene la media más alta, con 85.57. También tiene el rango intercuartílico más alto, de 4.50. Esto indica que hay una mayor dispersión de los valores de tiempo para el tratamiento B que para los otros tratamientos.

Tratamiento C

El tratamiento C tiene una media intermedia, con 85.57. También tiene un rango intercuartílico intermedio, de 5.50.

Control

El control tiene la media más alta, con 208.29. También tiene el rango intercuartílico más alto, de 7.00. Esto indica que hay una mayor dispersión de los valores de tiempo para el control que para los otros tratamientos.

ANOVA

# Realizar el ANOVA
modelo_anova <- aov(Tiempo ~ Tratamiento, data = ejercicio3)
# Resumen del ANOVA
resumen_anova <- summary(modelo_anova)
# Imprimir el resumen del ANOVA
print(resumen_anova)
##             Df Sum Sq Mean Sq F value Pr(>F)    
## Tratamiento  3  95041   31680    1559 <2e-16 ***
## Residuals   24    488      20                   
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

• ¿De qué manera el experimentador debe aleatorizar los experimentos y el material experimental? Se deben organizar de forma aleatoria los tratamientos a los grupos de frijoles, además aleatorizar el lote de estos para que las diferencias no afecten la calidad del resultado. Por otra parte, en cuanto al material experimental a usar todo debe estar en las mismas condiciones de material para que todos sean idénticos.

• Dé ejemplos de factores que deben estar fijos durante las pruebas experimentales, para que no afecten los resultados y las conclusiones. Factores como la temperatura, la humedad, la presión, la iluminación y el tiempo de exposición al tratamiento deben estar controlados para no afectar los resultados ni las conclusiones del experimento.

• Formule y pruebe la hipótesis de que las medias de los tratamientos son iguales. \(H_0: \mu_A=\mu_B=\mu_C=\mu_control\) \(H_a: \mu_i\neq\mu_j\) para \(i\neq j\)

Según los resultados de ANOVA para el valor P el cual es mucho menor a 0.05, se rechaza la hipótesis nula por tanto, se puede concluir que por lo menos uno de los tratamientos tiene un resultado diferente.

• Obtenga el diagrama de caja y el gráfico de medias, después interprételos.

# Crear el diagrama de cajas por categorías
boxplot(ejercicio3$Tiempo ~ ejercicio3$Tratamiento, data = ejercicio3, col = c("yellow", "purple", "lightgreen","pink"), ylab = "Tiempo", xlab = "Tratamiento")

Como se puede observar en la grafica el tratamiento A en el cual se remojaron los frijoles en bicarbonato de sodio presenta un mínimo de 74 y un máximo de 85. Por otra parte se observa el tratamiento B el cual consistió en remojar los frijoles con sal común cuenta con el mínimo más bajo de todos los tratamientos siendo 55, así mismo con su máximo el cual es 67, por otra parte se puede observar el tratamiento C en e cual se remojaban los frijoles en agua con sal y bicarbonato el cual cuenta con un mínimo y máximo mayor al tratamiento A y B, por otra parte podemos observar el tratamiento control el cual cuenta con el mínimo, máximo y media mas alta de todos los tratamientos aplicados. De este modo se puede inferir que el tratamiento mas efectivo para reducir la cocción de los frijoles es el tratamiento B.

library ( "gplots")
plotmeans(Tiempo ~ Tratamiento, data = ejercicio3, frame=FALSE,
          xlab = "Tratamiento" , ylab = "Tiempo",
          main= "Grafico de medias con 95% IC" , cex.axis=0.6)
## Warning in arrows(x, li, x, pmax(y - gap, li), col = barcol, lwd = lwd, :
## zero-length arrow is of indeterminate angle and so skipped

## Warning in arrows(x, li, x, pmax(y - gap, li), col = barcol, lwd = lwd, :
## zero-length arrow is of indeterminate angle and so skipped

## Warning in arrows(x, li, x, pmax(y - gap, li), col = barcol, lwd = lwd, :
## zero-length arrow is of indeterminate angle and so skipped

## Warning in arrows(x, li, x, pmax(y - gap, li), col = barcol, lwd = lwd, :
## zero-length arrow is of indeterminate angle and so skipped
## Warning in arrows(x, ui, x, pmin(y + gap, ui), col = barcol, lwd = lwd, :
## zero-length arrow is of indeterminate angle and so skipped

## Warning in arrows(x, ui, x, pmin(y + gap, ui), col = barcol, lwd = lwd, :
## zero-length arrow is of indeterminate angle and so skipped

## Warning in arrows(x, ui, x, pmin(y + gap, ui), col = barcol, lwd = lwd, :
## zero-length arrow is of indeterminate angle and so skipped

## Warning in arrows(x, ui, x, pmin(y + gap, ui), col = barcol, lwd = lwd, :
## zero-length arrow is of indeterminate angle and so skipped
## Warning in plot.xy(xy.coords(x, y), type = type, ...): "frame" is not a
## graphical parameter
## Warning in axis(1, at = 1:length(means), labels = legends, ...): "frame" is not
## a graphical parameter
## Warning in plot.xy(xy.coords(x, y), type = type, ...): "frame" is not a
## graphical parameter

"EDA con libreria ggpubr"
## [1] "EDA con libreria ggpubr"
"Box plot"
## [1] "Box plot"
library ( "ggpubr")

Como se puede observar en la gráfica las medias de los tratamientos A,B y C no tienen un rango de diferencia tan alto a comparación de el tratamiento control, siendo este el menos efectivo, y en comparación de los tratamientos A,B y C, el tratamiento con una media de tiempo menor es el B, por ende este seria el mas efectivo

TukeyHSD(modelo_anova)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = Tiempo ~ Tratamiento, data = ejercicio3)
## 
## $Tratamiento
##                 diff          lwr       upr     p adj
## B-A       -17.428571 -24.07568671 -10.78146 0.0000010
## C-A         6.714286   0.06717044  13.36140 0.0471059
## Control-A 129.428571 122.78145615 136.07569 0.0000000
## C-B        24.142857  17.49574187  30.78997 0.0000000
## Control-B 146.857143 140.21002758 153.50426 0.0000000
## Control-C 122.714286 116.06717044 129.36140 0.0000000

El tratamiento B tiene una media de tiempo de falla significativamente mayor que el tratamiento A (diferencia de medias = -17,428571; intervalo de confianza = -24,075687; p = 0,000001). El tratamiento B tiene una media de tiempo de falla significativamente mayor que el tratamiento de control (diferencia de medias = -17,428571; intervalo de confianza = -24,075687; p = 0,000001). El tratamiento C tiene una media de tiempo de falla significativamente mayor que el tratamiento A (diferencia de medias = 6,714286; intervalo de confianza = 0,067171; p = 0,047106). Sin embargo, no hay diferencias significativas entre las medias de los tratamientos B y C (diferencia de medias = 24,142857; intervalo de confianza = 17,495742; p = 0,000000).

plot(TukeyHSD(modelo_anova))

library(agricolae)
metodos.Duncan <-duncan.test(modelo_anova, trt = "Tratamiento", group = T, console = T)
## 
## Study: modelo_anova ~ "Tratamiento"
## 
## Duncan's new multiple range test
## for Tiempo 
## 
## Mean Square Error:  20.32143 
## 
## Tratamiento,  means
## 
##            Tiempo      std r       se Min Max   Q25 Q50   Q75
## A        78.85714 4.180453 7 1.703837  74  85  75.5  78  82.0
## B        61.42857 4.157609 7 1.703837  55  67  59.0  63  63.5
## C        85.57143 4.503967 7 1.703837  79  92  83.0  85  88.5
## Control 208.28571 5.122313 7 1.703837 200 214 205.5 208 212.5
## 
## Alpha: 0.05 ; DF Error: 24 
## 
## Critical Range
##        2        3        4 
## 4.973148 5.223301 5.383910 
## 
## Means with the same letter are not significantly different.
## 
##            Tiempo groups
## Control 208.28571      a
## C        85.57143      b
## A        78.85714      c
## B        61.42857      d
#out <- duncan.test(model, "virus", main = "yield of sweetpotato, Dealt with different virus")
plot(metodos.Duncan, variation="IQR" )

Existe una diferencia estadísticamente significativa en las medias de todos los tratamientos.

library(car)
## Loading required package: carData
residuos<-residuals(modelo_anova) #Creando un objeto llamado residuos que contiene los residuos el modelo

par(mfrow=c(1,3)) #Para dividir el área del gráfico en dos partes (una fila y dos columnas)

dplot<-density(residuos) #Creando un objeto llamado dplot que recibe un Density_Plot de los residuos

plot(dplot, #Graficando el objeto dplot
      main="Curva de densidad observada", #Título principal de la gráfica
      xlab = "Residuos", #Etiqueta del eje x
      ylab = "Densidad") #Etiqueta del eje y
polygon(dplot, #Añadiendo el poligono
        col = "green", #Definiendo el color del poligono
        border = "black") #Color del borde del poligono

qqPlot(residuos, #Un gráfico Cuantil-Cuantil de los residuos
       pch =20, #Forma de los puntos
       main="QQ-Plot de los residuos", #Título principal
       xlab = "Cuantiles teoricos",  #Etiqueta eje x
       ylab="Cuantiles observados de los residuos") #Etiqueta eje y
## [1]  6 27
mtext(side=3, at=par("usr")[1], adj=0.7, cex=0.6, col="gray40", line=-21, #Posición del texto
      text=paste("Karen Buitrago  --", #Texto
                 format(Sys.time(), 
                "%d/%m/%Y %H:%M:%S --"), #Fecha y Hora
                 R.version.string)) #Versión de R
boxplot(residuos, col = c("red"), ylab = "residuos", main="Box-plot  de los residuos")

Como se puede observar la curva de densidad tiene una forma de distrubución normal al igual que el q-q plot, por otra parte el diagrama de cajas cuenta con una distribucion anormal ya que no es completamente simetrico. $H_0:: Los residuos de la variable desgaste se distribuyen normalmente con media cero y varianza constante ei N(0,1) .

$H_a: los residuos de la variable desgaste no siguen la distribución normal.

shapiro.test(residuals(modelo_anova)) #Prueba Shapiro-Wilk para los residuos de la variable
## 
##  Shapiro-Wilk normality test
## 
## data:  residuals(modelo_anova)
## W = 0.95991, p-value = 0.3469

El valor de W es 0.95991, que es muy cercano a 1. El valor p también es alto (0.3469), lo que significa que no hay evidencia suficiente para rechazar la hipótesis nula de que los datos se distribuyen normalmente.

boxplot(residuos ~ ejercicio3$Tratamiento, 
        main = "Boxplot de Residuos por método de ensamble", 
        xlab = "Método de ensamble",
        col="orange",
        ylab = "Residuos")

library(car)
color_1 <-colorRampPalette(c("yellow ", "blue", "yellow"))


plot(residuos, main = "Prueba de independencia", pch=20,cex = 2, col=color_1(120), ylab = "Residuos", xlab = " ")

En la grafica anterior se observa que los puntos empiezan a formar un patron lo cual indica que hay poca homogeneidad de varianzas

Ho
Los residuos de la variable desgaste son iguales para los ditintos métodos de ensamble.
Ha
Existen por lo menos dos varianzas distintas para los ditintos métodos de ensamble.
library(stats)
bartlett.test(residuos ~ ejercicio3$Tratamiento) #Esta prueba requiere que el diseño se balanceado (el número de repeticiones debe ser igual para cada tratamiento)
## 
##  Bartlett test of homogeneity of variances
## 
## data:  residuos by ejercicio3$Tratamiento
## Bartlett's K-squared = 0.3302, df = 3, p-value = 0.9543

El estadístico K-cuadrado de Bartlett es 0,3302, con grados de libertad 3 y un valor p de 0,9543. Esto significa que la hipótesis nula de varianzas iguales no puede rechazarse. En otras palabras, no hay evidencia que sugiera que las varianzas de los residuos sean significativamente diferentes entre los diferentes tratamientos.

library(stats)
leveneTest(residuos ~ ejercicio3$Tratamiento)
## Warning in leveneTest.default(y = y, group = group, ...): group coerced to
## factor.

el valor p es 0,9201, que es mayor que el nivel de significación de 0,05. Por lo tanto, no podemos rechazar la hipótesis nula de que las varianzas de los residuos son iguales entre los diferentes tratamientos. Esto significa que podemos asumir que las varianzas son iguales al realizar el análisis de varianza unidireccional.

durbinWatsonTest(modelo_anova) 
##  lag Autocorrelation D-W Statistic p-value
##    1      -0.4142606       2.74274   0.126
##  Alternative hypothesis: rho != 0

el estadístico de Durbin-Watson es 2.74274, que está cerca de 2. Esto sugiere que no hay autocorrelación en la serie de tiempo. Sin embargo, el valor p es 0.17, que no es estadísticamente significativo. Esto significa que no podemos rechazar la hipótesis nula de que no hay autocorrelación en la serie de tiempo. En conclusión, las evidencias sugieren que no hay autocorrelación en la serie de tiempo, pero las evidencias no son estadísticamente significativas.

Ejercicio 4

Una compañía farmacéutica desea evaluar el efecto que tiene la cantidad de almidón en la dureza de las tabletas. Se decidió producir lotes con una cantidad determinada de almidón, y que las cantidades de almidón a aprobar fueran 2%, 5% y 10%. La variable de respuesta sería el promedio de la dureza de 20 tabletas de cada lote. Se hicieron 4 réplicas por tratamiento y se obtuvieron los siguientes resultados:

#install.packages("readxl")#solo una vez
library(readxl)
ejercicio4=read_excel("D:/Usuario/Desktop/exp/ejercicio4.xlsx")
ejercicio4#paravisualizarelejercicio4

Conteo de valores

conteo_valoresalmidon=table(ejercicio4$almidon)
conteo_valoresalmidon
## 
## A B C 
## 4 4 4

Resultados descriptivos de la variable dependiente

#install.packages("summarytools")# solo una vez
library(summarytools)
summarytools::descr(ejercicio4[,1])# todas las filas primera columna datos[,1]
## Descriptive Statistics  
## ejercicio4$Dureza  
## N: 12  
## 
##                     Dureza
## ----------------- --------
##              Mean     6.58
##           Std.Dev     1.62
##               Min     4.30
##                Q1     5.00
##            Median     6.70
##                Q3     7.95
##               Max     9.00
##               MAD     2.15
##               IQR     2.77
##                CV     0.25
##          Skewness    -0.05
##       SE.Skewness     0.64
##          Kurtosis    -1.60
##           N.Valid    12.00
##         Pct.Valid   100.00

En general, los datos de la dureza están distribuidos normalmente, con una media de 6.58 y una desviación estándar de 1.62. El 25% de los valores de dureza son menores que 5.00, el 50% son menores que 6.70 y el 75% son menores que 7.95.

El coeficiente de variación de la dureza es de 0.25, lo que indica que la variabilidad de la dureza es baja. Esto significa que hay una pequeña dispersión de los valores de dureza alrededor de la media.

Resultados descriptivos

# Calcular estadísticas descriptivas por categoría
resultados_descriptivos <- aggregate(Dureza ~ almidon, data = ejercicio4, summary)
# Imprimir los resultados descriptivos
print(resultados_descriptivos)
##   almidon Dureza.Min. Dureza.1st Qu. Dureza.Median Dureza.Mean Dureza.3rd Qu.
## 1       A       4.300          4.450         4.650       4.700          4.900
## 2       B       6.100          6.400         6.700       6.700          7.000
## 3       C       7.800          8.025         8.300       8.350          8.625
##   Dureza.Max.
## 1       5.200
## 2       7.300
## 3       9.000

almidon Dureza.Min. Dureza.1st Qu. Dureza.Median Dureza.Mean Dureza.3rd Qu. 1 2 4.300 4.450 4.650 4.700 4.900 2 5 6.100 6.400 6.700 6.700 7.000 3 10 7.800 8.025 8.300 8.350 8.625 Dureza.Max. 1 5.200 2 7.300 3 9.000

Almidón 2%

El nivel de almidón 2 tiene la dureza más baja, con 4.70. También tiene el rango intercuartílico (IQR) más bajo, de 0.45. Esto indica que los valores de dureza para el nivel de almidón 2 están más concentrados alrededor de la media.

Almidón 5%

El nivel de almidón 5 tiene la dureza intermedia, con 6.70. También tiene un rango intercuartílico intermedio, de 0.60.

Almidón 10%

El nivel de almidón 10 tiene la dureza más alta, con 8.35. También tiene el rango intercuartílico más alto, de 0.625. Esto indica que hay una mayor dispersión de los valores de dureza para el nivel de almidón 10 que para los otros niveles de almidón.

Diagrama de cajas y bigotes

# Crear el diagrama de cajas por categorías
boxplot(ejercicio4$Dureza ~ ejercicio4$almidon, data = ejercicio4, col = c("purple", "pink", "lightblue"), ylab = "Dureza", xlab = "% Almidón")

• ¿Hay evidencia suficiente de que el almidón influye en la dureza en las tabletas? Halle el ANOVA.

# Realizar el ANOVA
modelo_anova <- aov(Dureza ~ almidon , data = ejercicio4)
# Resumen del ANOVA
resumen_anova <- summary(modelo_anova)
# Imprimir el resumen del ANOVA
print(resumen_anova)
##             Df Sum Sq Mean Sq F value   Pr(>F)    
## almidon      2  26.73   13.36    58.1 7.16e-06 ***
## Residuals    9   2.07    0.23                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

\(H_0: \mu_2=\mu_5=\mu_10\) \(H_a: \mu_i\neq\mu_j\) para \(i\neq j\)

Se puede observar que el almidón influye en la dureza de las tabletas ya que a menor porcentaje de almidón la dureza será menor, por otra parte se puede observar que la hipotesis nula rechaza se debido al valor de P, por lo tanto la media de los tratamientos es significativamente diferente.

Método de Tukey Con el fin de que cada tratamiento se lea como un factor, se reemplaza 2,5 y 10,por A,B y C correspondientemente.

TukeyHSD(modelo_anova)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = Dureza ~ almidon, data = ejercicio4)
## 
## $almidon
##     diff       lwr      upr     p adj
## B-A 2.00 1.0531848 2.946815 0.0006016
## C-A 3.65 2.7031848 4.596815 0.0000052
## C-B 1.65 0.7031848 2.596815 0.0022940

los resultados de la prueba de comparaciones múltiples de Tukey muestran que la media de dureza para el tratamiento B es significativamente mayor que la media de dureza para el tratamiento A (diferencia de medias = 2,00; p-valor = 0,0006). La media de dureza para el tratamiento C también es significativamente mayor que la media de dureza para el tratamiento A (diferencia de medias = 3,65; p-valor = 0,000005). Sin embargo, no hay una diferencia significativa en la dureza media entre los tratamientos B y C (diferencia de medias = 1,65; p-valor = 0,0022).

plot(TukeyHSD(modelo_anova))

Método Duncan

library(agricolae)
metodos.Duncan <-duncan.test(modelo_anova, trt = "almidon", group = T, console = T)
## 
## Study: modelo_anova ~ "almidon"
## 
## Duncan's new multiple range test
## for Dureza 
## 
## Mean Square Error:  0.23 
## 
## almidon,  means
## 
##   Dureza       std r        se Min Max   Q25  Q50   Q75
## A   4.70 0.3915780 4 0.2397916 4.3 5.2 4.450 4.65 4.900
## B   6.70 0.5163978 4 0.2397916 6.1 7.3 6.400 6.70 7.000
## C   8.35 0.5196152 4 0.2397916 7.8 9.0 8.025 8.30 8.625
## 
## Alpha: 0.05 ; DF Error: 9 
## 
## Critical Range
##         2         3 
## 0.7671348 0.8006971 
## 
## Means with the same letter are not significantly different.
## 
##   Dureza groups
## C   8.35      a
## B   6.70      b
## A   4.70      c
#out <- duncan.test(model, "virus", main = "yield of sweetpotato, Dealt with different virus")
plot(metodos.Duncan, variation="IQR" )

Como se puede observar los datos no tienen letras relacionadas por lo cual son significativamente diferentes entre sí.

library(car)
## Loading required package: carData
residuos<-residuals(modelo_anova) #Creando un objeto llamado residuos que contiene los residuos el modelo

par(mfrow=c(1,3)) #Para dividir el área del gráfico en dos partes (una fila y dos columnas)

dplot<-density(residuos) #Creando un objeto llamado dplot que recibe un Density_Plot de los residuos

plot(dplot, #Graficando el objeto dplot
      main="Curva de densidad observada", #Título principal de la gráfica
      xlab = "Residuos", #Etiqueta del eje x
      ylab = "Densidad") #Etiqueta del eje y
polygon(dplot, #Añadiendo el poligono
        col = "blue3", #Definiendo el color del poligono
        border = "black") #Color del borde del poligono

qqPlot(residuos, #Un gráfico Cuantil-Cuantil de los residuos
       pch =20, #Forma de los puntos
       main="QQ-Plot de los residuos", #Título principal
       xlab = "Cuantiles teoricos",  #Etiqueta eje x
       ylab="Cuantiles observados de los residuos") #Etiqueta eje y
## [1] 9 8
mtext(side=3, at=par("usr")[1], adj=0.7, cex=0.6, col="gray40", line=-21, #Posición del texto
      text=paste("Karen Buitrago  --", #Texto
                 format(Sys.time(), 
                "%d/%m/%Y %H:%M:%S --"), #Fecha y Hora
                 R.version.string)) #Versión de R
boxplot(residuos, col = c("red"), ylab = "residuos", main="Box-plot  de los residuos")

En los graficos se pueden observar los datos distribuidos de forma normal. Ho : Los residuos de la variable desgaste se distribuyen normalmente con media cero y varianza constante ei N(0,1) .

Ha
los residuos de la variable desgaste no siguen la distribución normal.
shapiro.test(residuals(modelo_anova)) #Prueba Shapiro-Wilk para los residuos de la variable
## 
##  Shapiro-Wilk normality test
## 
## data:  residuals(modelo_anova)
## W = 0.93444, p-value = 0.4295

la estadística de Shapiro-Wilk W es 0,93444, con grados de libertad 24 y un valor p de 0,4295. Esto significa que no se puede rechazar la hipótesis nula de normalidad. En otras palabras, no hay evidencia que sugiera que los residuos no se distribuyen normalmente.

boxplot(residuos ~ ejercicio4$almidon, 
        main = "Boxplot de Residuos por método de ensamble", 
        xlab = "Método de ensamble",
        col="orange",
        ylab = "Residuos")

library(car)
color_1 <-colorRampPalette(c("yellow ", "blue", "yellow"))


plot(residuos, main = "Prueba de independencia", pch=20,cex = 2, col=color_1(120), ylab = "Residuos", xlab = " ")

Los datos no tienen ningun patron por lo cual se puede inferir que sus varianzas son homocedastaticas. Ho : Los residuos de la variable desgaste son iguales para los ditintos métodos de ensamble.

Ha
Existen por lo menos dos varianzas distintas para los ditintos métodos de ensamble.
library(stats)
bartlett.test(residuos ~ ejercicio4$almidon) #Esta prueba requiere que el diseño se balanceado (el número de repeticiones debe ser igual para cada tratamiento)
## 
##  Bartlett test of homogeneity of variances
## 
## data:  residuos by ejercicio4$almidon
## Bartlett's K-squared = 0.25398, df = 2, p-value = 0.8807

El valor 0.25398, que es muy pequeño. El valor p también es alto (0.8807), lo que significa que no hay evidencia suficiente para rechazar la hipótesis nula de que las varianzas de los grupos son iguales.

library(stats)
leveneTest(residuos ~ ejercicio4$almidon)
## Warning in leveneTest.default(y = y, group = group, ...): group coerced to
## factor.

el valor del estadístico de prueba F es 0.2667, que es muy pequeño. El valor p también es alto (0.7718), lo que significa que no hay evidencia suficiente para rechazar la hipótesis nula de que las varianzas de los grupos son iguales.

durbinWatsonTest(modelo_anova) 
##  lag Autocorrelation D-W Statistic p-value
##    1      -0.5398551      2.972222   0.152
##  Alternative hypothesis: rho != 0

el estadístico de prueba de Durbin-Watson es 2.972222, que está ligeramente por encima de 2. El valor p también es alto (0.164), lo que significa que no hay evidencia suficiente para rechazar la hipótesis nula de que no hay autocorrelación.

Ejercicio 5

Los datos que se presentan enseguida son rendimientos en toneladas por hectárea de un pasto con tres niveles de fertilización nitrogenada. El diseño fue completamente aleatorizado, con cinco repeticiones por tratamiento.

#install.packages("readxl")#solo una vez
library(readxl)
ejercicio5=read_excel("D:/Usuario/Desktop/exp/ejercicio5.xlsx")
ejercicio5#paravisualizarelejercicio5

Conteo de valores

conteo_valoresfertilizacion=table(ejercicio5$fertilizacion)
conteo_valoresfertilizacion
## 
## A B C 
## 5 5 5

Resultados descriptivos de la variable dependiente

#install.packages("summarytools")# solo una vez
library(summarytools)
summarytools::descr(ejercicio5[,1])# todas las filas primera columna datos[,1]
## Descriptive Statistics  
## ejercicio5$rendimiento  
## N: 15  
## 
##                     rendimiento
## ----------------- -------------
##              Mean         24.13
##           Std.Dev          7.51
##               Min         14.51
##                Q1         14.82
##            Median         25.15
##                Q3         32.26
##               Max         32.67
##               MAD         10.84
##               IQR         17.24
##                CV          0.31
##          Skewness         -0.20
##       SE.Skewness          0.58
##          Kurtosis         -1.69
##           N.Valid         15.00
##         Pct.Valid        100.00

En general, los datos del rendimiento están distribuidos normalmente, con una media de 24.13 y una desviación estándar de 7.51. El 25% de los valores de rendimiento son menores que 14.82, el 50% son menores que 25.15 y el 75% son menores que 32.26.El coeficiente de variación del rendimiento es de 0.31, lo que indica que la variabilidad del rendimiento es baja. Esto significa que hay una pequeña dispersión de los valores de rendimiento alrededor de la media.

Resultados descriptivos

# Calcular estadísticas descriptivas por categoría
resultados_descriptivos <- aggregate(rendimiento ~ fertilizacion, data = ejercicio5, summary)
# Imprimir los resultados descriptivos
print(resultados_descriptivos)
##   fertilizacion rendimiento.Min. rendimiento.1st Qu. rendimiento.Median
## 1             A         14.51410            14.67600           14.72000
## 2             B         25.03100            25.13100           25.15100
## 3             C         32.11100            32.25600           32.46000
##   rendimiento.Mean rendimiento.3rd Qu. rendimiento.Max.
## 1         14.75962            14.82300         15.06500
## 2         25.19620            25.26700         25.40100
## 3         32.42020            32.60500         32.66900

fertilizacion rendimiento.Min. rendimiento.1st Qu. rendimiento.Median 1 1 14.51410 14.67600 14.72000 2 2 25.03100 25.13100 25.15100 3 3 32.11100 32.25600 32.46000 rendimiento.Mean rendimiento.3rd Qu. rendimiento.Max. 1 14.75962 14.82300 15.06500 2 25.19620 25.26700 25.40100 3 32.42020 32.60500 32.66900

Fertilización 1

El nivel de fertilización 1 tiene el rendimiento más bajo, con una media de 14.76. También tiene el rango intercuartílico (IQR) más bajo, de 0.14. Esto indica que los valores de rendimiento para el nivel de fertilización 1 están más concentrados alrededor de la media.

Fertilización 2

El nivel de fertilización 2 tiene el rendimiento intermedio, con una media de 25.19. También tiene un rango intercuartílico intermedio, de 0.13.

Fertilización 3

El nivel de fertilización 3 tiene el rendimiento más alto, con una media de 32.42. También tiene el rango intercuartílico más alto, de 0.18. Esto indica que hay una mayor dispersión de los valores de rendimiento para el nivel de fertilización 3 que para los otros niveles de fertilización

• ¿Las diferencias muestrales hacen obvia la presencia de diferencias poblacionales? No, las diferencias muestrales no hacen obvia la presencia de diferencias poblacionales. Aunque los resultados del ANOVA muestran que las diferencias muestrales en el rendimiento son estadísticamente significativas, es importante tener en cuenta que las diferencias entre los niveles de rendimiento no son muy grandes. El nivel de fertilización 3 tiene un rendimiento promedio que es aproximadamente un 40% más alto que el nivel de fertilización 1. Esta es una diferencia significativa, pero no es una diferencia enorme. Es posible que las diferencias en el rendimiento se deban a otras causas, como la variación natural entre las plantas o las diferencias en las condiciones ambientales.

• Obtenga el análisis de varianza e interprételo.

# Realizar el ANOVA
modelo_anova <- aov(rendimiento ~ fertilizacion, data = ejercicio5)
# Resumen del ANOVA
resumen_anova <- summary(modelo_anova)
# Imprimir el resumen del ANOVA
print(resumen_anova)
##               Df Sum Sq Mean Sq F value Pr(>F)    
## fertilizacion  2  788.3   394.2   10132 <2e-16 ***
## Residuals     12    0.5     0.0                   
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

\(H_0: \mu_2=\mu_5=\mu_10\) \(H_a: \mu_i\neq\mu_j\) para \(i\neq j\)

Como se puede observar en el análisis contando con una hipótesis de que la media de todos los tratamientos es igual \(H_0: \mu_1=\mu_2=\mu_3\), se puede inferir mediante el valor de P que la hipótesis nula se rechaza ya que este cuenta con un valor mucho menor a 0.05. En este análisis se cuenta con 1 grado de libertad, por otra parte, se puede observar la sumatoria de los cuadrados la cual es 779,7 que indica la varianza debida a las diferencias entre los grupos.

Obtenga el diagrama de caja y el gráfico de medias, después interprételos

# Crear el diagrama de cajas por categorías
boxplot(ejercicio5$rendimiento ~ ejercicio5$fertilizacion, data = ejercicio5, col = c("purple", "pink", "lightblue"), ylab = "rendimiento", xlab = "fertilizacion")

La gráfica nos muestra como el primer tratamiento de fertilización presenta un menor rendimiento, ya que cuenta con el mínimo y máximo mas bajo de todos los tratamientos, seguido a este se encuentra el tratamiento numero dos el cual cuenta con una diferencia significativa en el rendimiento a comparación con el grupo 1 de fertilización, por otra parte se encuentra el tratamiento 3 el cual cuenta con el rendimiento más alto a comparación del tratamiento 1 y 2, ya que este supera el doble del tratamiento 1. Teniendo así que el tratamiento 3 el que cuenta con mayor rendimiento.

library ( "gplots")
plotmeans(rendimiento ~ fertilizacion , data =ejercicio5, frame =FALSE,
          xlab = "rendimiento" , ylab = "fertilizacion",
          main= "Grafico de medias con 95% IC" , cex.axis=0.7)
## Warning in arrows(x, li, x, pmax(y - gap, li), col = barcol, lwd = lwd, :
## zero-length arrow is of indeterminate angle and so skipped

## Warning in arrows(x, li, x, pmax(y - gap, li), col = barcol, lwd = lwd, :
## zero-length arrow is of indeterminate angle and so skipped

## Warning in arrows(x, li, x, pmax(y - gap, li), col = barcol, lwd = lwd, :
## zero-length arrow is of indeterminate angle and so skipped
## Warning in arrows(x, ui, x, pmin(y + gap, ui), col = barcol, lwd = lwd, :
## zero-length arrow is of indeterminate angle and so skipped

## Warning in arrows(x, ui, x, pmin(y + gap, ui), col = barcol, lwd = lwd, :
## zero-length arrow is of indeterminate angle and so skipped

## Warning in arrows(x, ui, x, pmin(y + gap, ui), col = barcol, lwd = lwd, :
## zero-length arrow is of indeterminate angle and so skipped
## Warning in plot.xy(xy.coords(x, y), type = type, ...): "frame" is not a
## graphical parameter
## Warning in axis(1, at = 1:length(means), labels = legends, ...): "frame" is not
## a graphical parameter
## Warning in plot.xy(xy.coords(x, y), type = type, ...): "frame" is not a
## graphical parameter

"EDA con libreria ggpubr"
## [1] "EDA con libreria ggpubr"
"Box plot"
## [1] "Box plot"
library ( "ggpubr")

Tal y como la gráfica lo muestra las medias evidencian de que el tratamiento 1 tiene una menor fertilización por ende su media de fertilización es 14.7, por otra parte se encuentra el tratamiento 2 que tiene una fertilización mayor a comparación del tratamiento 1 con una media de 25.1, sin embargo el tratamiento con una media que indica fertilización mayor es el tratamiento 3 el cual tiene una media de fertilización de 32.4.

Método de Tukey

Con el fin de que cada tratamiento se lea como un factor, se reemplaza 1,2 y 3,por A,B y C correspondientemente.

TukeyHSD(modelo_anova)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = rendimiento ~ fertilizacion, data = ejercicio5)
## 
## $fertilizacion
##         diff      lwr      upr p adj
## B-A 10.43658 10.10377 10.76939     0
## C-A 17.66058 17.32777 17.99339     0
## C-B  7.22400  6.89119  7.55681     0

, las diferencias entre las medias de los tipos de fertilización B y C con respecto a la fertilización A son de 10.43658, 17.66058 y 7.22400. Estas diferencias son bastante grandes, lo que sugiere que los tipos de fertilización B y C tienen un rendimiento significativamente mejor que la fertilización A.

plot(TukeyHSD(modelo_anova))

Método Duncan

library(agricolae)
metodos.Duncan <-duncan.test(modelo_anova, trt = "fertilizacion", group = T, console = T)
## 
## Study: modelo_anova ~ "fertilizacion"
## 
## Duncan's new multiple range test
## for rendimiento 
## 
## Mean Square Error:  0.03890497 
## 
## fertilizacion,  means
## 
##   rendimiento       std r         se     Min    Max    Q25    Q50    Q75
## A    14.75962 0.2037867 5 0.08820995 14.5141 15.065 14.676 14.720 14.823
## B    25.19620 0.1418986 5 0.08820995 25.0310 25.401 25.131 25.151 25.267
## C    32.42020 0.2346289 5 0.08820995 32.1110 32.669 32.256 32.460 32.605
## 
## Alpha: 0.05 ; DF Error: 12 
## 
## Critical Range
##         2         3 
## 0.2718019 0.2844986 
## 
## Means with the same letter are not significantly different.
## 
##   rendimiento groups
## C    32.42020      a
## B    25.19620      b
## A    14.75962      c
#out <- duncan.test(model, "virus", main = "yield of sweetpotato, Dealt with different virus")
plot(metodos.Duncan, variation="IQR" )

En los datos no se puede encontrar una correlación entre letras por lo tanto se puede decir que existe una diferencia estadísticamente significativa en las medias de todos los tratamientos.

library(car)
## Loading required package: carData
residuos<-residuals(modelo_anova) #Creando un objeto llamado residuos que contiene los residuos el modelo

par(mfrow=c(1,3)) #Para dividir el área del gráfico en dos partes (una fila y dos columnas)

dplot<-density(residuos) #Creando un objeto llamado dplot que recibe un Density_Plot de los residuos

plot(dplot, #Graficando el objeto dplot
      main="Curva de densidad observada", #Título principal de la gráfica
      xlab = "Residuos", #Etiqueta del eje x
      ylab = "Densidad") #Etiqueta del eje y
polygon(dplot, #Añadiendo el poligono
        col = "lightblue", #Definiendo el color del poligono
        border = "black") #Color del borde del poligono

qqPlot(residuos, #Un gráfico Cuantil-Cuantil de los residuos
       pch =20, #Forma de los puntos
       main="QQ-Plot de los residuos", #Título principal
       xlab = "Cuantiles teoricos",  #Etiqueta eje x
       ylab="Cuantiles observados de los residuos") #Etiqueta eje y
## [1] 15  5
mtext(side=3, at=par("usr")[1], adj=0.7, cex=0.6, col="gray40", line=-21, #Posición del texto
      text=paste("Karen Buitrago  --", #Texto
                 format(Sys.time(), 
                "%d/%m/%Y %H:%M:%S --"), #Fecha y Hora
                 R.version.string)) #Versión de R
boxplot(residuos, col = c("pink3"), ylab = "residuos", main="Box-plot  de los residuos")

Como se puede observar la curva de la densidad y el qq plot tienen una distribución normal, por otra parte el diagrama de cajas tiene una distrubución asimetrica lo que indica una distribución anormal de los datos.

Ho
Los residuos de la variable desgaste se distribuyen normalmente con media cero y varianza constante ei N(0,1) .
Ha
los residuos de la variable desgaste no siguen la distribución normal
shapiro.test(residuals(modelo_anova)) #Prueba Shapiro-Wilk para los residuos de la variable
## 
##  Shapiro-Wilk normality test
## 
## data:  residuals(modelo_anova)
## W = 0.97219, p-value = 0.8891

el valor de W es 0.97219, que es muy cercano a 1. El valor p también es alto (0.8891), lo que significa que no hay evidencia suficiente para rechazar la hipótesis nula de que los datos se distribuyen normalmente.

boxplot(residuos ~ ejercicio5$fertilizacion, 
        main = "Boxplot de Residuos por método de ensamble", 
        xlab = "Método de ensamble",
        col="orange",
        ylab = "Residuos")

En el tratamiento A se puede observar que los datos se encuentran dispersos con un dato atipico, por otra parte se observa que los datos no tienen una tendencia de distribución por lo cual no hay evidencia de incumplimiento del supuesto de homogeneidad de varianzas.

library(car)
color_1 <-colorRampPalette(c("yellow ", "blue", "yellow"))


plot(residuos, main = "Prueba de independencia", pch=20,cex = 2, col=color_1(120), ylab = "Residuos", xlab = " ")

En la grafica anterior se observan dispersos los puntos sin seguir un patron, esto es un indicio de homogeneidad de varianzas.

Ho
Los residuos de la variable desgaste son iguales para los ditintos métodos de ensamble.
Ha
Existen por lo menos dos varianzas distintas para los ditintos métodos de ensamble.
library(stats)
bartlett.test(residuos ~ ejercicio5$fertilizacion) #Esta prueba requiere que el diseño se balanceado (el número de repeticiones debe ser igual para cada tratamiento)
## 
##  Bartlett test of homogeneity of variances
## 
## data:  residuos by ejercicio5$fertilizacion
## Bartlett's K-squared = 0.8865, df = 2, p-value = 0.6419

el valor de Bartlett’s K-squared es 0.8865, que es muy pequeño. El valor p también es alto (0.6419), lo que significa que no hay evidencia suficiente para rechazar la hipótesis nula de que las varianzas de los grupos son iguales.

library(stats)
leveneTest(residuos ~ ejercicio5$fertilizacion)
## Warning in leveneTest.default(y = y, group = group, ...): group coerced to
## factor.

el valor del estadístico de prueba F es 0.5372, que es muy pequeño. El valor p también es alto (0.5978), lo que significa que no hay evidencia suficiente para rechazar la hipótesis nula de que las varianzas de los grupos son iguales.

durbinWatsonTest(modelo_anova) 
##  lag Autocorrelation D-W Statistic p-value
##    1      -0.4464995      2.679612   0.406
##  Alternative hypothesis: rho != 0

el estadístico de Durbin-Watson es 2,679612, que está cerca de 2. Esto sugiere que no hay autocorrelación en la serie de tiempo. Sin embargo, el valor p es 0,424, que no es estadísticamente significativo. Esto significa que no podemos rechazar la hipótesis nula de que no hay autocorrelación en la serie de tiempo.