library(faraway)
## Warning: package 'faraway' was built under R version 4.0.5
data("rats")
rats
##    time poison treat
## 1  0.31      I     A
## 2  0.82      I     B
## 3  0.43      I     C
## 4  0.45      I     D
## 5  0.45      I     A
## 6  1.10      I     B
## 7  0.45      I     C
## 8  0.71      I     D
## 9  0.46      I     A
## 10 0.88      I     B
## 11 0.63      I     C
## 12 0.66      I     D
## 13 0.43      I     A
## 14 0.72      I     B
## 15 0.76      I     C
## 16 0.62      I     D
## 17 0.36     II     A
## 18 0.92     II     B
## 19 0.44     II     C
## 20 0.56     II     D
## 21 0.29     II     A
## 22 0.61     II     B
## 23 0.35     II     C
## 24 1.02     II     D
## 25 0.40     II     A
## 26 0.49     II     B
## 27 0.31     II     C
## 28 0.71     II     D
## 29 0.23     II     A
## 30 1.24     II     B
## 31 0.40     II     C
## 32 0.38     II     D
## 33 0.22    III     A
## 34 0.30    III     B
## 35 0.23    III     C
## 36 0.30    III     D
## 37 0.21    III     A
## 38 0.37    III     B
## 39 0.25    III     C
## 40 0.36    III     D
## 41 0.18    III     A
## 42 0.38    III     B
## 43 0.24    III     C
## 44 0.31    III     D
## 45 0.23    III     A
## 46 0.29    III     B
## 47 0.22    III     C
## 48 0.33    III     D
attach(rats)

Análisis exploratorio de los datos

library(ggplot2)
ggplot(rats,aes(x=poison,y=time,fill=poison))+geom_boxplot()

ggplot(rats,aes(x=treat,y=time,fill=treat))+geom_boxplot()

Del boxplot de poison se observa que el I y II son muy similares, siendo el II el que tiene valores un poco menores. En cuanto al III, es evidente que este presenta mayor diferencia frente a los otros dos, pues el su boxplot no se solapa ni con el I ni con el II.

Con respecto al boxplot de treat, el A y C son los que presentan mayor semejanza, en el B hubieron casos donde el tiempo de supervivencia fue bastante alto pero no necesariamente implica que sea el mejor ya que este treat tiene una desviación mayor que los demás. Para el D, como este se solapa con los otros 3 treat, posiblemente estará en un estado intermedio entre A/C y B.

Modelo de diseño ANOVA

Para la variable poison

library(agricolae)
## Warning: package 'agricolae' was built under R version 4.0.5
p=lm(time~poison,data = rats)
summary(p)
## 
## Call:
## lm(formula = time ~ poison, data = rats)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -0.31438 -0.15922 -0.03125  0.08594  0.69563 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  0.61750    0.05234  11.799 2.28e-15 ***
## poisonII    -0.07313    0.07401  -0.988    0.328    
## poisonIII   -0.34125    0.07401  -4.611 3.32e-05 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.2093 on 45 degrees of freedom
## Multiple R-squared:  0.3438, Adjusted R-squared:  0.3146 
## F-statistic: 11.79 on 2 and 45 DF,  p-value: 7.656e-05
anova(p)
## Analysis of Variance Table
## 
## Response: time
##           Df Sum Sq Mean Sq F value    Pr(>F)    
## poison     2 1.0330 0.51651  11.786 7.656e-05 ***
## Residuals 45 1.9721 0.04382                      
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
p1=LSD.test(p, "poison");p1
## $statistics
##      MSerror Df     Mean       CV  t.value       LSD
##   0.04382375 45 0.479375 43.66962 2.014103 0.1490704
## 
## $parameters
##         test p.ajusted name.t ntr alpha
##   Fisher-LSD      none poison   3  0.05
## 
## $means
##         time        std  r       LCL       UCL  Min  Max    Q25   Q50   Q75
## I   0.617500 0.20942779 16 0.5120913 0.7229087 0.31 1.10 0.4500 0.625 0.730
## II  0.544375 0.28936641 16 0.4389663 0.6497837 0.23 1.24 0.3575 0.420 0.635
## III 0.276250 0.06227627 16 0.1708413 0.3816587 0.18 0.38 0.2275 0.270 0.315
## 
## $comparison
## NULL
## 
## $groups
##         time groups
## I   0.617500      a
## II  0.544375      a
## III 0.276250      b
## 
## attr(,"class")
## [1] "group"

Al analizar la variable poison y teniendo como base o referencia poison I, se hace notorio que el III posee una diferencia significativamente más alta que poison II frente al I, pues al hacer el LSD.test, el software agrupó a poison I y II en el ‘a’ mientras que el III fue designado al grupo b. Esta situación concuerda con lo planteado al principio en el boxplot.

Para la variable treat

t=lm(time~treat,data = rats)
summary(t)
## 
## Call:
## lm(formula = time ~ treat, data = rats)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -0.38667 -0.15292 -0.01417  0.12833  0.56333 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  0.31417    0.06282   5.001 9.62e-06 ***
## treatB       0.36250    0.08885   4.080 0.000186 ***
## treatC       0.07833    0.08885   0.882 0.382739    
## treatD       0.22000    0.08885   2.476 0.017196 *  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.2176 on 44 degrees of freedom
## Multiple R-squared:  0.3065, Adjusted R-squared:  0.2593 
## F-statistic: 6.484 on 3 and 44 DF,  p-value: 0.0009921
anova(t)
## Analysis of Variance Table
## 
## Response: time
##           Df  Sum Sq  Mean Sq F value    Pr(>F)    
## treat      3 0.92121 0.307069  6.4836 0.0009921 ***
## Residuals 44 2.08388 0.047361                      
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
t1=LSD.test(t,"treat");t1
## $statistics
##     MSerror Df     Mean       CV  t.value       LSD
##   0.0473608 44 0.479375 45.39773 2.015368 0.1790557
## 
## $parameters
##         test p.ajusted name.t ntr alpha
##   Fisher-LSD      none  treat   4  0.05
## 
## $means
##        time       std  r       LCL       UCL  Min  Max    Q25   Q50    Q75
## A 0.3141667 0.1022882 12 0.1875552 0.4407782 0.18 0.46 0.2275 0.300 0.4075
## B 0.6766667 0.3208323 12 0.5500552 0.8032782 0.29 1.24 0.3775 0.665 0.8900
## C 0.3925000 0.1670125 12 0.2658885 0.5191115 0.22 0.76 0.2475 0.375 0.4425
## D 0.5341667 0.2194397 12 0.4075552 0.6607782 0.30 1.02 0.3525 0.505 0.6725
## 
## $comparison
## NULL
## 
## $groups
##        time groups
## B 0.6766667      a
## D 0.5341667     ab
## C 0.3925000     bc
## A 0.3141667      c
## 
## attr(,"class")
## [1] "group"

Para el caso de la variable treat, se toma la A como base y los resultados indican que el tratamiento C es el que presenta mayor similitud con el A, mientras que el B tiene la diferencia más significativa. Por ello, la agrupación hecha al final señala que tanto A como C pertenecen al grupo ‘c’ y el D está en un punto intermedio entre el ‘a’ y el ‘b’. Nuevamente, se confirma lo hipotetizado en el análisis exploratorio.