Declarar grupos

Realiza la prueba de normalidad con gráficas y formales de los cuatro grupos

Sayula (G1): 25, 25, 29, 27, 25, 29, 29, 29, 25, 29, 29, 29, 25, 25, 29, 29, 31, 31, 29, 27, 25, 25, 27, 29, 31, 29, 31, 29, 25, 29 Gómez Farías (G2): 29, 25, 25, 29, 25, 29, 29, 29, 27, 29, 31, 25, 25, 25, 29, 25, 29, 31, 29, 25, 27, 25, 25, 25, 25, 29, 29, 27, 27, 29 Zacoalco (G3): 29, 29, 29, 29, 29, 27, 27, 25, 29, 25, 31, 29, 25, 29, 27, 29, 25, 25, 29, 27, 27, 27, 25, 31, 25, 29, 29, 25, 27, 25 Techaluta (G4): 27, 31, 27, 25, 27, 25, 29, 27, 27, 25, 29, 29, 25, 25, 25, 25, 25, 29, 29, 25, 29, 27, 25, 25, 31, 29, 25, 25, 31, 25

G1<- c(25, 25, 29, 27, 25, 29, 29, 29, 25, 29, 29, 29, 25, 25, 29, 29, 31, 31, 29, 27, 25, 25, 27, 29, 31, 29, 31, 29, 25, 29)
G2<- c(29, 25, 25, 29, 25, 29, 29, 29, 27, 29, 31, 25, 25, 25, 29, 25, 29, 31, 29, 25, 27, 25, 25, 25, 25, 29, 29, 27, 27, 29) 
G3<- c(29, 29, 29, 29, 29, 27, 27, 25, 29, 25, 31, 29, 25, 29, 27, 29, 25, 25, 29, 27, 27, 27, 25, 31, 25, 29, 29, 25, 27, 25) 
G4<- c(27, 31, 27, 25, 27, 25, 29, 27, 27, 25, 29, 29, 25, 25, 25, 25, 25, 29, 29, 25, 29, 27, 25, 25, 31, 29, 25, 25, 31, 25)

Configuración para mostrar histograma

# Histograma para el Grupo 1
hist(G1, main="Histograma de G1", xlab="Valor", col="lightblue", border="black", breaks=10, xlim=c(20, 35))

# Histograma para el Grupo 2
hist(G2, main="Histograma de G2", xlab="Valor", col="lightgreen", border="black", breaks=10, xlim=c(20, 35))

# Histograma para el Grupo 3
hist(G3, main="Histograma de G3", xlab="Valor", col="lightcoral", border="black", breaks=10, xlim=c(20, 35))

# Histograma para el Grupo 4
hist(G4, main="Histograma de G4", xlab="Valor", col="lightyellow", border="black", breaks=10, xlim=c(20, 35))

Ventana para mostrar gráficos individuales

{par(mfrow=c(1,1)}

Realizar el test de Shapiro-Wilk

resultado <- shapiro.test(G1)
print(resultado)
## 
##  Shapiro-Wilk normality test
## 
## data:  G1
## W = 0.81358, p-value = 0.0001171
resultado <- shapiro.test(G2)
print(resultado)
## 
##  Shapiro-Wilk normality test
## 
## data:  G2
## W = 0.79961, p-value = 6.449e-05
resultado <- shapiro.test(G3)
print(resultado)
## 
##  Shapiro-Wilk normality test
## 
## data:  G3
## W = 0.84349, p-value = 0.0004543
resultado <- shapiro.test(G4)
print(resultado)
## 
##  Shapiro-Wilk normality test
## 
## data:  G4
## W = 0.80207, p-value = 7.153e-05

Realizar prueba Kruskall-wallis para diferencia entre grupos

gr<- factor(rep(c("G1", "G2", "G3", "G4"), times = c(length(G1), length(G2), length(G3), length(G4))))
resultado <- kruskal.test(G1,G2,G3,G4)
print(resultado)
## 
##  Kruskal-Wallis rank sum test
## 
## data:  G1 and G2
## Kruskal-Wallis chi-squared = 8.548, df = 3, p-value = 0.03594

Realizar correlaciones con matriz de correlación

# Crear un data frame con los vectores
data <- data.frame(G1, G2, G3, G4)
# Calcular la matriz de correlación
cor_matrix <- cor(data)
print(cor_matrix)
##             G1          G2          G3          G4
## G1  1.00000000  0.44029194 -0.19965949 -0.07738834
## G2  0.44029194  1.00000000 -0.09995974  0.03518802
## G3 -0.19965949 -0.09995974  1.00000000  0.14093991
## G4 -0.07738834  0.03518802  0.14093991  1.00000000

Modelos de regresion lineal y predicciones

# Crear un data frame con los vectores
data <- data.frame(G1, G2, G3, G4)
# Realizar una regresión lineal con G1 como variable dependiente y G2, G3, G4 como variables independientes
modelo <- lm(G1 ~ G2 + G3 + G4, data = data)

# Ver los resultados del modelo
summary(modelo)
## 
## Call:
## lm(formula = G1 ~ G2 + G3 + G4, data = data)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -3.3776 -1.5910  0.0641  1.1194  4.0266 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)  
## (Intercept) 22.24054    8.40450   2.646   0.0136 *
## G2           0.44089    0.17909   2.462   0.0208 *
## G3          -0.16204    0.19386  -0.836   0.4109  
## G4          -0.07221    0.17585  -0.411   0.6847  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 1.997 on 26 degrees of freedom
## Multiple R-squared:  0.2234, Adjusted R-squared:  0.1338 
## F-statistic: 2.493 on 3 and 26 DF,  p-value: 0.08231
# Graficar los residuos del modelo
plot(modelo$residuals, main="Residuos del Modelo", xlab="Índice", ylab="Residuos")

# Realizar predicciones con el modelo
predicciones <- predict(modelo, newdata = data)
print(predicciones)
##        1        2        3        4        5        6        7        8 
## 28.37760 26.32523 26.61406 28.52201 26.61406 28.84608 28.55726 29.02574 
##        9       10       11       12       13       14       15       16 
## 27.49583 29.17016 28.79088 26.46965 27.40661 26.75847 28.84608 26.75847 
##       17       18       19       20       21       22       23       24 
## 29.17016 29.76310 28.23319 27.08254 27.67549 26.93813 27.40661 26.43440 
##       25       26       27       28       29       30 
## 26.97338 28.23319 28.52201 28.28838 27.53108 29.17016

```