Los siguientes datos fueron tomados de la exposición de dos clases de moluscos (A y B) a diferentes concentraciones de agua de mar (100%, 75% y 50%). Con esto se observó el consumo de oxígeno por unidad de peso seco del molusco.
require(ggplot2)
## Loading required package: ggplot2
## Warning: package 'ggplot2' was built under R version 4.1.2
require(plotly)
## Loading required package: plotly
## Warning: package 'plotly' was built under R version 4.1.2
## Error: package or namespace load failed for 'plotly' in loadNamespace(i, c(lib.loc, .libPaths()), versionCheck = vI[[i]]):
## namespace 'rlang' 0.4.12 is already loaded, but >= 1.0.1 is required
require(BD_moluscos)
## Loading required package: BD_moluscos
## Warning in library(package, lib.loc = lib.loc, character.only = TRUE,
## logical.return = TRUE, : there is no package called 'BD_moluscos'
load("C:/Users/David Borja/Downloads/BD_moluscos.RData")
data("BD_moluscos")
## Warning in data("BD_moluscos"): data set 'BD_moluscos' not found
head(BD_moluscos,3)
## # A tibble: 3 x 3
## c_agua molusco cons_o
## <dbl> <chr> <dbl>
## 1 100 A 7.16
## 2 100 A 8.26
## 3 100 A 6.78
#y=cons_o
#x1=molusco
#x2=c_agua
BD_moluscos$c_agua=as.factor(BD_moluscos$c_agua)
BD_moluscos$molusco=as.factor(BD_moluscos$molusco)
ggplot(BD_moluscos,aes(x=cons_o))+geom_histogram()+theme_bw()
## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
ggplot(BD_moluscos,aes(x=cons_o,fill=c_agua))+geom_histogram()+theme_bw()
## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
ggplot(BD_moluscos,aes(y=cons_o,x=c_agua,fill=c_agua))+geom_boxplot()+theme_bw()
Inicialmente se observan valores de consumo de oxigeno con relativamente poca variación y con la mayor parte de datos concentrados entre 5 y 15 unidades.En el histograma con colores se observan bajos consumos de oxígeno cuando la concentración de agua de mar esta en 75%, aumentando en concentraciones del 100% de agua y llegando a los mas altos valores de consumo de oxígeno con una concentración de agua salada del 50%.Este comportamiento también se aprecia en el boxplot, pudiendo notar ademas, que a 75% de concentración de agua salada, los valores de consumo de oxigeno varian menos.
mod1=lm(cons_o~c_agua,data=BD_moluscos)
anova(mod1)
## Analysis of Variance Table
##
## Response: cons_o
## Df Sum Sq Mean Sq F value Pr(>F)
## c_agua 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(mod1)
##
## Call:
## lm(formula = cons_o ~ c_agua, data = BD_moluscos)
##
## 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) 12.2506 0.7515 16.302 < 2e-16 ***
## c_agua75 -5.2581 1.0627 -4.948 1.09e-05 ***
## c_agua100 -3.5794 1.0627 -3.368 0.00156 **
## ---
## 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 algunas diferencias entre las 3 concentraciones de agua, siendo la del 75% la que mas difiere del intercepto, en 50%. Para visualizar mejor esto utilizaremos una prueba postanova acontinuación:
#require(agricolae)
#post1=LSD.test(mod1,"c_agua")
#post1
#bar.group(post1$groups,ylim=c(0,120))
Podemos observas que acorde al consumo de oxígeno, se diferencia un grupo a para aquellos en concentraciones de agua del 50%. Mientras tanto, por presentar diferencias poco significativas entre ellos, aquellos en concentraciones de agua de 75% y 100% se agruparon en b.
mod2=lm(cons_o~c_agua+molusco,data=BD_moluscos)
anova(mod2)
## Analysis of Variance Table
##
## Response: cons_o
## Df Sum Sq Mean Sq F value Pr(>F)
## c_agua 2 230.82 115.408 13.2457 3.14e-05 ***
## molusco 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
#post2=LSD.test(mod2,"molusco")
#post2
#bar.group(post2$groups,xlim=c(0,90),horiz = T,las=2)
Respecto al consumo de oxígeno, no se diferencian lo suficiente como para formar multiples grupos. Tanto A como B se pocisionan en el grupo a.