En el siguiente informe se…

library(readxl)
## Warning: package 'readxl' was built under R version 4.0.3
moluscosParcial3 <- read_excel("C:/Bioestadistica/moluscosParcial3.xlsx")
View(moluscosParcial3)

Primer Punto.

head(moluscosParcial3)
## # A tibble: 6 x 3
##   `Tipo de molusco` `Concentración de agua de mar` `consumo de oxígeno`
##   <chr>                                      <dbl>                <dbl>
## 1 A                                            100                 7.16
## 2 A                                            100                 8.26
## 3 A                                            100                 6.78
## 4 A                                            100                14   
## 5 A                                            100                13.6 
## 6 A                                            100                11.1
require(ggplot2)
require(FinCal)
require(agricolae)

En la tabla anterior se encuentran los resultados de un estudio Donde dos tipos de moluscos A y B fueron sometidos a tres concentraciones distintas de agua de mar (100%, 75% y 50%) y se observó el consumo de oxígeno midiendo la proporción de O2 por unidad de peso seco del molusco.

Análisis Univariado.

summary(moluscosParcial3)
##  Tipo de molusco    Concentración de agua de mar consumo de oxígeno
##  Length:48          Min.   : 50                  Min.   : 1.800    
##  Class :character   1st Qu.: 50                  1st Qu.: 6.312    
##  Mode  :character   Median : 75                  Median : 9.700    
##                     Mean   : 75                  Mean   : 9.305    
##                     3rd Qu.:100                  3rd Qu.:11.232    
##                     Max.   :100                  Max.   :18.800

Al observar la tabla anterior se encuentra que las variables “Tipo de molusco” y “Concentración de agua de mar” son de tipo carácter mientras que la variable “consumo de oxígeno” es numérica, por lo que en la tabla se observa que el mínimo consumo de oxigeno es 1.800 y el máximo es de 18.800, la media es de 9.700 y en promedio de consumo es de 9.305; también se encuentra que el 25% de los moluscos consumen menos de 6.312 de oxígeno y el 75% no consume más de 11.232.

ggplot(moluscosParcial3,aes(x=`Tipo de molusco`))+geom_bar(fill="45")+ggtitle("Tipo de molusco")+theme_light()

Con este diagrama de barras se puede contemplar que en cada una de las dos clases hay 24 individuos.

ggplot(moluscosParcial3,aes(x=`Concentración de agua de mar`))+geom_histogram(fill="27")+ggtitle("Concentración de agua de mar")+theme_light()

Al observar este histograma se encuentra que a cada una de las concentraciones de agua se sometieron 16 individuos.

ggplot(moluscosParcial3,aes(x=`consumo de oxígeno`))+geom_boxplot(colour="5" ,fill="28")+ggtitle("consumo de oxígeno")+theme_light()

coefficient.variation(sd=sd(moluscosParcial3$`consumo de oxígeno`), avg = mean(moluscosParcial3$`consumo de oxígeno`))
## [1] 0.3957801

Con lo anterior se observa que el consumo de oxígeno por parte de los moluscos, es bastante heterogéneo ya que su variación es de 39.57%, además, una mayor cantidad de moluscos consumen menos de 10; por último, se observa que en esta variable hay un dato atípico.

Análisis Bivariado.

En esta parte del informe se realizará un análisis bivariado en el cual se va a relacionar el consumo de oxígeno con las otras variables para conocer si estás variables lo afectan y de qué manera.

ggplot(moluscosParcial3,aes(x=`Tipo de molusco`, y=`consumo de oxígeno`, fill=`Tipo de molusco` ))+geom_boxplot()+ggtitle("consumo de oxígeno segun cada tipo de molusco.")+theme_light()

tapply(moluscosParcial3$`consumo de oxígeno`, moluscosParcial3$`Tipo de molusco`,mean)
##         A         B 
## 10.000417  8.609167

Según el anterior diagrama de cajas el tipo de molusco A tiene un mayor consumo de oxígeno, con un promedio de consumo de 10.0, además de tener una variación mínima, aunque contenga datos atípicos. A diferencia del anterior, el molusco tipo B presenta un menor consumo de oxígeno ya que su promedio de consumo es de 8.6 y una mayor variación con respecto al A.

concentracion=as.character(moluscosParcial3$`Concentración de agua de mar`)
ggplot(moluscosParcial3,aes(y=`consumo de oxígeno`,x=concentracion, fill=concentracion ))+facet_grid(~`Tipo de molusco`)+geom_boxplot()+ggtitle("Consumo de oxigeno de cada tipo de molusco en distintas concentraciones de agua.")+theme_light()

Al observar el diagrama de cajas anterior se encuentra que los tipos de moluscos presentan un mayor consumo de oxígeno en una concentración 50% de agua de mar y un menor consumo en la concentración 75% de agua de mar. En cuanto al tipo de molusco, en general, el molusco de tipo A presenta un mayor consumo de oxígeno ya que su consumo es mayor en dos de las tres concentraciones. Sin embargo, los moluscos del tipo B, presentan una mayor variación en el consumo de oxígeno en todas las concentraciones de agua.

¿Afectan las otras variables el consumo de oxigeno?

Para realizar este segundo ítem del punto 1 se usará un modelo completamente al azar ya que se comparará una variable numérica con dos variables categóricas que se denomina factor de tratamiento. Esta comparación se realizará por medio del Anova y el post-Anova.

Modelo para la concetración de agua.

model1=lm(`consumo de oxígeno`~concentracion, data=moluscosParcial3)
anova(model1)
## Analysis of Variance Table
## 
## Response: consumo de oxígeno
##               Df Sum Sq Mean Sq F value    Pr(>F)    
## concentracion  2 230.82 115.408  12.773 4.043e-05 ***
## Residuals     45 406.59   9.035                      
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
summary(model1)
## 
## Call:
## lm(formula = `consumo de oxígeno` ~ concentracion, data = moluscosParcial3)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -5.8706 -2.0445 -0.4766  2.2494  6.5494 
## 
## Coefficients:
##                 Estimate Std. Error t value Pr(>|t|)    
## (Intercept)       8.6713     0.7515  11.539 4.87e-15 ***
## concentracion50   3.5794     1.0627   3.368  0.00156 ** 
## concentracion75  -1.6788     1.0627  -1.580  0.12120    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 3.006 on 45 degrees of freedom
## Multiple R-squared:  0.3621, Adjusted R-squared:  0.3338 
## F-statistic: 12.77 on 2 and 45 DF,  p-value: 4.043e-05

La tabla anova muestra que la concentración del agua afecta el consumo de oxígeno; la concentración de 75% tiene una mayor afectación que la de 100% en comparación con el control, que sería la concentración de 50%. También se encontró, que la concentración de 75% provoca una disminución de -5.26 en el consumo de oxígeno, mientras que la concentración de 100% genera una disminución de -3.58. Ya que la diferencia entre las dos variables no es muy diferente se debe realizar un post-anova.

post1=LSD.test(model1, "concentracion")
post1
## $statistics
##   MSerror Df     Mean       CV  t.value     LSD
##   9.03543 45 9.304792 32.30485 2.014103 2.14048
## 
## $parameters
##         test p.ajusted        name.t ntr alpha
##   Fisher-LSD      none concentracion   3  0.05
## 
## $means
##     consumo de oxígeno      std  r       LCL       UCL  Min  Max    Q25    Q50
## 100            8.67125 3.000940 16  7.157702 10.184798 3.68 14.0  6.140  8.595
## 50            12.25062 3.199643 16 10.737077 13.764173 6.38 18.8 10.085 11.455
## 75             6.99250 2.804093 16  5.478952  8.506048 1.80 13.2  5.200  6.430
##         Q75
## 100 10.5750
## 50  14.5000
## 75   8.7675
## 
## $comparison
## NULL
## 
## $groups
##     consumo de oxígeno groups
## 50            12.25062      a
## 100            8.67125      b
## 75             6.99250      b
## 
## attr(,"class")
## [1] "group"

En el post-anova se encontró que las concentraciones de agua de 100% y 75% no presentan una diferencia significativa entre ellas ya que sus medias son muy parecidas y se encuentran en la categoría b. Mientras que la concentración de 50% es la que produce un mayor consumo de oxígeno. Por último, se encontraron diferencias en los promedios de las concentraciones por lo que se realizara otro en el que se incluya la variable “Tipo de molusco”, esto con el fin de evaluar si juntas afectan de mayor manera el consumo de oxígeno.

Modelo para la concetración de agua y el tipo de molusco.

tipo=as.factor(moluscosParcial3$`Tipo de molusco`)
model2= lm(`consumo de oxígeno`~concentracion+tipo, data=moluscosParcial3)
anova(model2)
## Analysis of Variance Table
## 
## Response: consumo de oxígeno
##               Df Sum Sq Mean Sq F value   Pr(>F)    
## concentracion  2 230.82 115.408 13.2457 3.14e-05 ***
## tipo           1  23.23  23.227  2.6658   0.1097    
## Residuals     44 383.37   8.713                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
summary(model2)
## 
## Call:
## lm(formula = `consumo de oxígeno` ~ concentracion + tipo, data = moluscosParcial3)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -5.1750 -1.9877 -0.7019  2.1244  6.1450 
## 
## Coefficients:
##                 Estimate Std. Error t value Pr(>|t|)    
## (Intercept)       9.3669     0.8521  10.993 3.33e-14 ***
## concentracion50   3.5794     1.0436   3.430  0.00132 ** 
## concentracion75  -1.6788     1.0436  -1.609  0.11486    
## tipoB            -1.3913     0.8521  -1.633  0.10966    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 2.952 on 44 degrees of freedom
## Multiple R-squared:  0.3986, Adjusted R-squared:  0.3575 
## F-statistic: 9.719 on 3 and 44 DF,  p-value: 4.866e-05
post2=LSD.test(model2,"tipo")
post2
## $statistics
##    MSerror Df     Mean       CV  t.value      LSD
##   8.712897 44 9.304792 31.72303 2.015368 1.717295
## 
## $parameters
##         test p.ajusted name.t ntr alpha
##   Fisher-LSD      none   tipo   2  0.05
## 
## $means
##   consumo de oxígeno      std  r      LCL       UCL Min  Max   Q25  Q50     Q75
## A          10.000417 3.268661 24 8.786106 11.214728 5.2 18.8 7.180 9.74 11.2825
## B           8.609167 4.002435 24 7.394856  9.823478 1.8 17.7 5.685 8.06 10.7000
## 
## $comparison
## NULL
## 
## $groups
##   consumo de oxígeno groups
## A          10.000417      a
## B           8.609167      a
## 
## attr(,"class")
## [1] "group"

Para concluir, se encontró que no se observan grandes diferencias en el tipo de molusco, por lo que el escoger el A o el B no afecta en nada el consumo de oxigeno ya que se encuentran en el mismo grupo. También se puedo descubrir que la concentración de agua a 50%, es la que presenta un mayor consumo de oxígeno, mientras que las concentraciones de 75% y 100% presentan un menor consumo y se encuentran en la misma categoría.

Segundo punto

Riqueza.

library(readxl)
riquezaParcial3 <- read_excel("C:/Bioestadistica/riquezaParcial3.xlsx")
View(riquezaParcial3)
ggplot(riquezaParcial3,aes(y=especies,x=canton,fill=canton))+facet_grid(~temporada)+geom_boxplot()+ggtitle(" Canton vs especies en cada época del año")+theme_light()

Con el anterior diagrama de cajas se realiza una exploración general de las tres variables y su relación. Al estudiar el diagrama se encuentra que el tamaño s1 presenta una mayor cantidad de especies, seguido de él esta el tamaño s2 y así sucesivamente hasta el tamaño s4 el cual presenta menos especies. En cuanto a la época de año, se observa que en las épocas t2, t3 y t4, hay un comportamiento similar en cuanto al número de especies según el tamaño de canto, mientras que la época t1 es diferente ya que el número de especies de s2 es mayor que el de s1, lo cual no se presenta en las otras épocas. Teniendo en cuenta lo anterior se espera que el tamaño del cantón afecte el número de especies, ya que partir del tamaño s1, la cantidad de especies disminuye. Además, es probable que las épocas del año, no afecten significativamente la cantidad de especies.

model3= lm(especies~canton + temporada, data=riquezaParcial3)
par(mfrow=c(2,2))
plot(model3)
## hat values (leverages) are all = 0.109375
##  and there are no factor predictors; no plot no. 5

En las gráficas para la verificación de los supuestos, se encontró que el supuesto de normalidad se cumple debido a que en su mayoría presenta un comportamiento lineal, pero el resto de las gráficas no cumplen los supuestos, ya que en vez de tener comportamiento aleatorio presentan una tendencia a organizarse de manera vertical. El comportamiento de los residuales indica que tienen información importante para la estimación del modelo, que en este no se tiene en cuenta, por ende, es esencial buscar un modelo que represente mejor la información.

summary(model3)
## 
## Call:
## lm(formula = especies ~ canton + temporada, data = riquezaParcial3)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -6.0937 -1.5312 -0.1563  1.2969  5.4062 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept)   7.1563     0.7460   9.592 1.69e-13 ***
## cantons2     -1.4375     0.7976  -1.802   0.0768 .  
## cantons3     -3.9375     0.7976  -4.937 7.27e-06 ***
## cantons4     -5.0000     0.7976  -6.269 5.19e-08 ***
## temporadat2   0.4375     0.7976   0.549   0.5855    
## temporadat3   0.3750     0.7976   0.470   0.6400    
## temporadat4  -0.1875     0.7976  -0.235   0.8150    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 2.256 on 57 degrees of freedom
## Multiple R-squared:  0.4677, Adjusted R-squared:  0.4117 
## F-statistic: 8.348 on 6 and 57 DF,  p-value: 1.666e-06
anova(model3)
## Analysis of Variance Table
## 
## Response: especies
##           Df  Sum Sq Mean Sq F value    Pr(>F)    
## canton     3 250.563  83.521 16.4126 8.323e-08 ***
## temporada  3   4.312   1.437  0.2825    0.8378    
## Residuals 57 290.062   5.089                      
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

La tabla anova muestra que el tamaño del cantón afecta el número de especies, además se encuentran diferencias significativas entre cada uno de ellos. El canto dos es el menos significativo, además, según lo expuesto por el valor P las épocas del año no presentan un impacto importante en el número de especies. Los estimadores indican que en comparación con el control el cantón 2 disminuye -1.44 en número de especies, seguido de el cantón 3 de -3.94 seguido de -5.00. Al no obtener diferencias significativas se realizar un post-anova.

post3=LSD.test(model3,"canton")
post3
## $statistics
##    MSerror Df    Mean       CV  t.value      LSD
##   5.088816 57 4.71875 47.80589 2.002465 1.597086
## 
## $parameters
##         test p.ajusted name.t ntr alpha
##   Fisher-LSD      none canton   4  0.05
## 
## $means
##    especies      std  r      LCL      UCL Min Max  Q25 Q50  Q75
## s1   7.3125 1.922455 16 6.183189 8.441811   4  11 6.75   7 8.00
## s2   5.8750 2.963669 16 4.745689 7.004311   0  11 3.75   6 8.00
## s3   3.3750 2.276694 16 2.245689 4.504311   0   9 2.00   3 4.25
## s4   2.3125 1.400893 16 1.183189 3.441811   0   5 1.00   2 3.25
## 
## $comparison
## NULL
## 
## $groups
##    especies groups
## s1   7.3125      a
## s2   5.8750      a
## s3   3.3750      b
## s4   2.3125      b
## 
## attr(,"class")
## [1] "group"
post4=LSD.test(model3,"temporada")
post4
## $statistics
##    MSerror Df    Mean       CV  t.value      LSD
##   5.088816 57 4.71875 47.80589 2.002465 1.597086
## 
## $parameters
##         test p.ajusted    name.t ntr alpha
##   Fisher-LSD      none temporada   4  0.05
## 
## $means
##    especies      std  r      LCL      UCL Min Max  Q25 Q50  Q75
## t1   4.5625 2.897556 16 3.433189 5.691811   1  11 2.00 3.0 7.00
## t2   5.0000 2.476557 16 3.870689 6.129311   1   9 3.00 4.5 6.50
## t3   4.9375 3.802959 16 3.808189 6.066811   0  11 1.00 6.0 7.25
## t4   4.3750 2.655184 16 3.245689 5.504311   1  11 2.75 4.0 5.25
## 
## $comparison
## NULL
## 
## $groups
##    especies groups
## t2   5.0000      a
## t3   4.9375      a
## t1   4.5625      a
## t4   4.3750      a
## 
## attr(,"class")
## [1] "group"

Con el post-anova, se afirmar que los cantones s1 y s2 contienen el mayor número de especies ya que gracias a sus medidas tan similares se encuentran las dos en la categoría A. Mientras que s3 y s4 agrupan menos cantidad de especies ya que sus medias además de ser muy similares los ubican en la categoría B. Por último, el post- anova de las épocas del año permite afirmar que esta variable no influye en el número de especies.

model4=lm(especies~canton+temporada+canton:temporada,data = riquezaParcial3)
anova(model4)
## Analysis of Variance Table
## 
## Response: especies
##                  Df  Sum Sq Mean Sq F value    Pr(>F)    
## canton            3 250.563  83.521 15.5689 3.319e-07 ***
## temporada         3   4.312   1.437  0.2680    0.8482    
## canton:temporada  9  32.562   3.618  0.6744    0.7278    
## Residuals        48 257.500   5.365                      
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
post5=LSD.test(model4,list("canton", "temporada"))
post5
## $statistics
##    MSerror Df    Mean       CV  t.value      LSD
##   5.364583 48 4.71875 49.08412 2.010635 3.292958
## 
## $parameters
##         test p.ajusted           name.t ntr alpha
##   Fisher-LSD      none canton:temporada  16  0.05
## 
## $means
##       especies       std r        LCL       UCL Min Max  Q25 Q50  Q75
## s1:t1     6.50 1.0000000 4  4.1715271  8.828473   5   7 6.50 7.0 7.00
## s1:t2     6.75 2.2173558 4  4.4215271  9.078473   4   9 5.50 7.0 8.25
## s1:t3     8.25 1.8929694 4  5.9215271 10.578473   7  11 7.00 7.5 8.75
## s1:t4     7.75 2.5000000 4  5.4215271 10.078473   5  11 6.50 7.5 8.75
## s2:t1     7.25 3.3040379 4  4.9215271  9.578473   3  11 6.00 7.5 8.75
## s2:t2     6.00 2.9439203 4  3.6715271  8.328473   3   9 3.75 6.0 8.25
## s2:t3     5.75 4.1932485 4  3.4215271  8.078473   0  10 4.50 6.5 7.75
## s2:t4     4.50 1.2909944 4  2.1715271  6.828473   3   6 3.75 4.5 5.25
## s3:t1     2.25 0.9574271 4 -0.0784729  4.578473   1   3 1.75 2.5 3.00
## s3:t2     4.00 1.8257419 4  1.6715271  6.328473   2   6 2.75 4.0 5.25
## s3:t3     4.00 4.2426407 4  1.6715271  6.328473   0   9 0.75 3.5 6.75
## s3:t4     3.25 0.9574271 4  0.9215271  5.578473   2   4 2.75 3.5 4.00
## s4:t1     2.25 0.5000000 4 -0.0784729  4.578473   2   3 2.00 2.0 2.25
## s4:t2     3.25 1.7078251 4  0.9215271  5.578473   1   5 2.50 3.5 4.25
## s4:t3     1.75 1.7078251 4 -0.5784729  4.078473   0   4 0.75 1.5 2.50
## s4:t4     2.00 1.4142136 4 -0.3284729  4.328473   1   4 1.00 1.5 2.50
## 
## $comparison
## NULL
## 
## $groups
##       especies groups
## s1:t3     8.25      a
## s1:t4     7.75     ab
## s2:t1     7.25    abc
## s1:t2     6.75    abc
## s1:t1     6.50   abcd
## s2:t2     6.00   abcd
## s2:t3     5.75   abcd
## s2:t4     4.50   bcde
## s3:t2     4.00    cde
## s3:t3     4.00    cde
## s3:t4     3.25     de
## s4:t2     3.25     de
## s3:t1     2.25      e
## s4:t1     2.25      e
## s4:t4     2.00      e
## s4:t3     1.75      e
## 
## attr(,"class")
## [1] "group"

Para concluir se realiza el anterior modelo en el cual las variables temporada y cantón interactúan, lo que arrojo este modelo es que estás variables si afectan de manera importante la de especies, también se encontró que el canton s1 en la temporada3 genera una mayor cantidad de especies ya que su promedio es de 8.25 aproximadamente con un intervaki de confianza de 95%. A pesar de esto el modelo no se ajusta de la mejor manera ya que no se tienen en cuenta los residuales.

#Punto 3.

El tamaño de la muestra es de 24 Cangrejos, los cuales se sometieron al experimineto para evidenciar el efecto de dos variables (temperatura y sexo) sobre la tasa de consumo de oxigeno. Posteriormente se analiza la relacion entre el consumo de oxigeno en los cangrejos respecto a diferentes temperaturas.

require(ggplot2)
require(agricolae)
library(readxl)
Crustaceos <- read_excel("C:/Bioestadistica/Crustaceos.xlsx")
View(Crustaceos)
Crustaceos
## # A tibble: 24 x 3
##    Sexo   Temperatura   CO2
##    <chr>  <chr>       <dbl>
##  1 macho  Baja          1.9
##  2 macho  Baja          1.8
##  3 macho  Baja          1.6
##  4 macho  Baja          1.4
##  5 hembra Baja          1.8
##  6 hembra Baja          1.7
##  7 hembra Baja          1.4
##  8 hembra Baja          1.5
##  9 macho  Media         2.3
## 10 macho  Media         2.1
## # ... with 14 more rows

Segun la tabla para este experimento se evaluaron tres variables: temperatura (baja, media y alta), sexo (hembra y macho) y consumo de O2 en mg (Consumo de O2).

#Exploracion de datos.

ggplot(Crustaceos,aes(y=CO2, x=Temperatura, fill=Sexo))+ facet_grid(~Temperatura)+ geom_boxplot()+theme_bw()+ ylab("Consumo de O2 (mg)")+ggtitle("Diagrama de cajas")

En temperaturas altas los machos consumen más oxígeno en relación a las hembras. En temperaturas bajas los machos y las hembras consumen poco oxigeno, sin embargo los machos tienen una tasa de consumo de oxigeno mayor. En temperatura media, las hembras sobrepasan la tasa de consumo de Oxígeno en comparación a los machos.

#Anova

Modelo4= lm(CO2~Temperatura+Sexo, data = Crustaceos)
anova(Modelo4)
## Analysis of Variance Table
## 
## Response: CO2
##             Df Sum Sq Mean Sq F value    Pr(>F)    
## Temperatura  2 7.5833  3.7917 73.4463 6.108e-10 ***
## Sexo         1 0.0037  0.0037  0.0726    0.7903    
## Residuals   20 1.0325  0.0516                      
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

La tabla anterior nos deja evidenciar que el valor P para la temperatura es significativo, es decir, que esta variable se relaciona directamente con el consumo de oxigeno. Por otro lado la variable sexo no se relaciona de manera directa con respecto al consumo de oxigeno.

#PostAnova

Postanova4=LSD.test(Modelo4, "Temperatura")
Postanova4
## $statistics
##    MSerror Df     Mean       CV  t.value       LSD
##   0.051625 20 2.345833 9.685742 2.085963 0.2369773
## 
## $parameters
##         test p.ajusted      name.t ntr alpha
##   Fisher-LSD      none Temperatura   3  0.05
## 
## $means
##          CO2       std r      LCL      UCL Min Max   Q25  Q50   Q75
## Alta  3.0125 0.2232071 8 2.844932 3.180068 2.7 3.4 2.875 3.00 3.125
## Baja  1.6375 0.1922610 8 1.469932 1.805068 1.4 1.9 1.475 1.65 1.800
## Media 2.3875 0.2474874 8 2.219932 2.555068 2.0 2.7 2.250 2.40 2.600
## 
## $comparison
## NULL
## 
## $groups
##          CO2 groups
## Alta  3.0125      a
## Media 2.3875      b
## Baja  1.6375      c
## 
## attr(,"class")
## [1] "group"

La anterior tabla nos deja evidenciar, que en temperaturas altas existe un mayor consumo de oxigeno por parte de los crustaceos en relacion a las otras temperaturas(media y baja), ya que su promedio es de 3.01 clasificandose en el grupo a.

#Punto 4 El siguiente archivo permite evidenciar el efecto de cuatro tipos de dieta sobre el engorde de porcinos, en este caso se tienen 20 cerdos asignados de manera aleatoria a cuatro grupos experimentales (cuatro tipos de dieta).El objetivo es evaluar si existe diferencias entre los pesos corporales de los cerdos (en Kg) después de haber sido criados con las cuatro variables de dieta.

require(ggplot2)
require(agricolae)
library(readxl)
EngordePorcinos_Parcial3 <- read_excel("C:/Bioestadistica/EngordePorcinos_Parcial3.xlsx")
View(EngordePorcinos_Parcial3)
EngordePorcinos_Parcial3
## # A tibble: 20 x 2
##    Alimentacion Datos
##    <chr>        <dbl>
##  1 A             60.8
##  2 A             67  
##  3 A             65  
##  4 A             68.6
##  5 A             61.7
##  6 B             68.7
##  7 B             67.7
##  8 B             75  
##  9 B             73.3
## 10 B             71.8
## 11 C             69.6
## 12 C             77.1
## 13 C             75.2
## 14 C             71.5
## 15 C             74.3
## 16 D             61.9
## 17 D             64.2
## 18 D             63.1
## 19 D             66.7
## 20 D             60.3

Esta base de datos se compone de dos varibles: Alimentacion (A,B,C,D) y el peso en Kg de cada cerdo (Datos).

#Exploracion de datos.

ggplot(EngordePorcinos_Parcial3,aes(y=Datos, x=Alimentacion, fill=Alimentacion))+geom_boxplot()+theme_bw()+ylab("Peso corporal(Kg)")+ ggtitle("Diagrama de cajas")

De acuerdo a la grafica, el grupo de porcinos que ganan mayor peso corporal, se alimentan del tipo de alimentacion C, mientras que los que son sometidos al tipo de alimentacion D presentan un menor peso corporal.

#ANOVA Posteriormente se realiza un analisis Anova para evidenciar el efecto de la variable Alimentacion con respecto al peso corporal en kilogramos.

MOD1=lm(Datos~Alimentacion, data = EngordePorcinos_Parcial3)
anova(MOD1)
## Analysis of Variance Table
## 
## Response: Datos
##              Df Sum Sq Mean Sq F value    Pr(>F)    
## Alimentacion  3 377.71 125.902  14.239 8.833e-05 ***
## Residuals    16 141.47   8.842                      
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

En la tabla podemos evidenciar que el valor P es un valor significativo, lo que quiere decir, que la variable Alimentacion esta relacionada con el peso corporal de los cerdos (Datos).

#PosAnova El análisis postanova nos permite conocer las relaciones de diferencia que se presentan dentro del factor (varible dependiente), en este caso la variable “Alimentacion”los cuales favoreceran o no al experimento.

Postanova1=LSD.test(MOD1, "Alimentacion")
Postanova1
## $statistics
##   MSerror Df   Mean       CV  t.value      LSD
##     8.842 16 68.175 4.361643 2.119905 3.986775
## 
## $parameters
##         test p.ajusted       name.t ntr alpha
##   Fisher-LSD      none Alimentacion   4  0.05
## 
## $means
##   Datos      std r      LCL      UCL  Min  Max  Q25  Q50  Q75
## A 64.62 3.345445 5 61.80092 67.43908 60.8 68.6 61.7 65.0 67.0
## B 71.30 3.068387 5 68.48092 74.11908 67.7 75.0 68.7 71.8 73.3
## C 73.54 2.987139 5 70.72092 76.35908 69.6 77.1 71.5 74.3 75.2
## D 63.24 2.416195 5 60.42092 66.05908 60.3 66.7 61.9 63.1 64.2
## 
## $comparison
## NULL
## 
## $groups
##   Datos groups
## C 73.54      a
## B 71.30      a
## A 64.62      b
## D 63.24      b
## 
## attr(,"class")
## [1] "group"

La anterior tabla nos deja evidenciar, que en temperaturas altas existe un mayor consumo de oxigeno por parte de los crustaceos en relacion a las otras temperaturas(media y baja), ya que su promedio es de 3.01 clasificandose en el grupo a.