Con el propósito de solucionar un método de análisis químico (húmedo), se dispone de una gran cantidad de muestra que ha sido bien molida y mezclada. Se recogieron datos adecuados para poder realizar un ANOVA.Para empezar, se disolvieron 10 g de muestra en 100 mL de agua.El siguiente paso fue tomar varias alícuotas diferentes y recoger múltiples lecturas de cada una de ellas. Se colocaron seis alícuotas en cada uno de los seis frascos y se repitieron seis mediciones en cada uno de ellos. Estas alícuotas dieron los resultados mostrados en la Tabla 9-2.
X= Número de Alícuota
Considerando los datos realice:
Análisis de Anova, evaluando todos los supuestos. Analice los resultados obtenidos Genere algunas ideas que usted considere puedan describir el comportamiento de los datos y formule algunas mejoras para el mencionado experimento.
df<-read.csv("https://raw.githubusercontent.com/KilmaraAbrego/DATOS-1/main/PROBLEMA%20%236%20PROYECTO%20FINAL%20%20-%20Hoja%201.csv")
df
## X1 X2 X3 X4 X5 X6
## 1 7.25 10.07 5.96 7.10 5.74 4.74
## 2 7.68 9.02 6.66 6.10 6.90 6.75
## 3 7.76 9.51 5.87 6.27 6.29 6.71
## 4 8.10 10.64 6.95 5.99 6.37 6.51
## 5 7.50 10.27 6.54 6.32 5.99 5.95
## 6 7.58 9.64 6.29 5.54 6.58 6.50
library(tidyverse)
## -- Attaching packages --------------------------------------- tidyverse 1.3.1 --
## v ggplot2 3.3.5 v purrr 0.3.4
## v tibble 3.1.4 v dplyr 1.0.7
## v tidyr 1.1.4 v stringr 1.4.0
## v readr 2.0.2 v forcats 0.5.1
## -- Conflicts ------------------------------------------ tidyverse_conflicts() --
## x dplyr::filter() masks stats::filter()
## x dplyr::lag() masks stats::lag()
library(ggpubr)
library(rstatix)
##
## Attaching package: 'rstatix'
## The following object is masked from 'package:stats':
##
## filter
df <- df %>% gather(key="alicuota",value="score",X1,X2,X3,X4,X5,X6) %>% convert_as_factor(alicuota)
df
## alicuota score
## 1 X1 7.25
## 2 X1 7.68
## 3 X1 7.76
## 4 X1 8.10
## 5 X1 7.50
## 6 X1 7.58
## 7 X2 10.07
## 8 X2 9.02
## 9 X2 9.51
## 10 X2 10.64
## 11 X2 10.27
## 12 X2 9.64
## 13 X3 5.96
## 14 X3 6.66
## 15 X3 5.87
## 16 X3 6.95
## 17 X3 6.54
## 18 X3 6.29
## 19 X4 7.10
## 20 X4 6.10
## 21 X4 6.27
## 22 X4 5.99
## 23 X4 6.32
## 24 X4 5.54
## 25 X5 5.74
## 26 X5 6.90
## 27 X5 6.29
## 28 X5 6.37
## 29 X5 5.99
## 30 X5 6.58
## 31 X6 4.74
## 32 X6 6.75
## 33 X6 6.71
## 34 X6 6.51
## 35 X6 5.95
## 36 X6 6.50
df %>% group_by(alicuota) %>% get_summary_stats(score,type="mean_sd")
## # A tibble: 6 x 5
## alicuota variable n mean sd
## <fct> <chr> <dbl> <dbl> <dbl>
## 1 X1 score 6 7.64 0.284
## 2 X2 score 6 9.86 0.583
## 3 X3 score 6 6.38 0.418
## 4 X4 score 6 6.22 0.513
## 5 X5 score 6 6.31 0.413
## 6 X6 score 6 6.19 0.767
df
## alicuota score
## 1 X1 7.25
## 2 X1 7.68
## 3 X1 7.76
## 4 X1 8.10
## 5 X1 7.50
## 6 X1 7.58
## 7 X2 10.07
## 8 X2 9.02
## 9 X2 9.51
## 10 X2 10.64
## 11 X2 10.27
## 12 X2 9.64
## 13 X3 5.96
## 14 X3 6.66
## 15 X3 5.87
## 16 X3 6.95
## 17 X3 6.54
## 18 X3 6.29
## 19 X4 7.10
## 20 X4 6.10
## 21 X4 6.27
## 22 X4 5.99
## 23 X4 6.32
## 24 X4 5.54
## 25 X5 5.74
## 26 X5 6.90
## 27 X5 6.29
## 28 X5 6.37
## 29 X5 5.99
## 30 X5 6.58
## 31 X6 4.74
## 32 X6 6.75
## 33 X6 6.71
## 34 X6 6.51
## 35 X6 5.95
## 36 X6 6.50
bxp=ggboxplot(df,x="alicuota",y="score", add="point")
bxp
df %>% group_by(alicuota) %>% identify_outliers(score)
## # A tibble: 4 x 4
## alicuota score is.outlier is.extreme
## <fct> <dbl> <lgl> <lgl>
## 1 X1 8.1 TRUE FALSE
## 2 X4 7.1 TRUE FALSE
## 3 X4 5.54 TRUE FALSE
## 4 X6 4.74 TRUE FALSE
df %>% group_by(alicuota) %>% shapiro_test(score)
## # A tibble: 6 x 4
## alicuota variable statistic p
## <fct> <chr> <dbl> <dbl>
## 1 X1 score 0.980 0.953
## 2 X2 score 0.985 0.973
## 3 X3 score 0.954 0.774
## 4 X4 score 0.937 0.635
## 5 X5 score 0.990 0.989
## 6 X6 score 0.771 0.0320
ggqqplot(df,"score",facet.by="alicuota")
modelo=lm(score~alicuota,data=df)
anova=aov(modelo)
summary(anova)
## Df Sum Sq Mean Sq F value Pr(>F)
## alicuota 5 63.86 12.773 47.4 2.4e-13 ***
## Residuals 30 8.08 0.269
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
pwc=df%>%pairwise_t_test(score~alicuota,paired=TRUE,p.adjust.method = "bonferroni")
pwc
## # A tibble: 15 x 10
## .y. group1 group2 n1 n2 statistic df p p.adj p.adj.signif
## * <chr> <chr> <chr> <int> <int> <dbl> <dbl> <dbl> <dbl> <chr>
## 1 score X1 X2 6 6 -9.07 5 0.000272 0.004 **
## 2 score X1 X3 6 6 9.29 5 0.000244 0.004 **
## 3 score X1 X4 6 6 4.88 5 0.005 0.069 ns
## 4 score X1 X5 6 6 9.02 5 0.00028 0.004 **
## 5 score X1 X6 6 6 6.06 5 0.002 0.026 *
## 6 score X2 X3 6 6 14.2 5 0.0000311 0.000466 ***
## 7 score X2 X4 6 6 12.7 5 0.0000534 0.000801 ***
## 8 score X2 X5 6 6 9.65 5 0.000203 0.003 **
## 9 score X2 X6 6 6 7.94 5 0.00051 0.008 **
## 10 score X3 X4 6 6 0.488 5 0.646 1 ns
## 11 score X3 X5 6 6 0.369 5 0.727 1 ns
## 12 score X3 X6 6 6 0.631 5 0.556 1 ns
## 13 score X4 X5 6 6 -0.258 5 0.806 1 ns
## 14 score X4 X6 6 6 0.0533 5 0.96 1 ns
## 15 score X5 X6 6 6 0.606 5 0.571 1 ns