1 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.
a. Realice un análisis exploratorio que permita conocer como es el consumo de oxígeno en las distintas concentraciones de agua de mar, y si estas conclusiones son las mismas para cada tipo de molusco.
A partir del análisis grafico se observa que el consumo de oxigeno es mayor para las concentraciones de 50% y 100% en comparación a lo observado para la concentración del 75%. Este fenomeno se repite para los 2 tipos de moluscos estudiados, aunque se observa una aparente diferencia de intensidad en el consumo de oxigeno bajo cada concentración al comparar los 2 tipos de moluscos. Esto será validado en el siguiente punto para validar si la diferencia es estadisticamente significativa.
knitr::opts_chunk$set(warning = TRUE, message = TRUE)
load("C:/Users/jdiaz/Downloads/moluscos.RData")
moluscos= data.frame(BD_moluscos)
moluscos$c_agua= as.factor(moluscos$c_agua)
head(moluscos)
| c_agua | molusco | cons_o |
|---|---|---|
| 100 | A | 7.16 |
| 100 | A | 8.26 |
| 100 | A | 6.78 |
| 100 | A | 14.00 |
| 100 | A | 13.60 |
| 100 | A | 11.10 |
require(ggplot2)
## Loading required package: ggplot2
require(plotly)
## Loading required package: plotly
##
## Attaching package: 'plotly'
## The following object is masked from 'package:ggplot2':
##
## last_plot
## The following object is masked from 'package:stats':
##
## filter
## The following object is masked from 'package:graphics':
##
## layout
ConsumO2=ggplot(moluscos,aes(x= c_agua, y=cons_o))+ geom_boxplot(fill="#69b3a2")+ theme_bw()+ geom_point()+ ggtitle("Consumo de Oxigeno")+ scale_x_discrete(" % Concentracion de Agua de mar")+ scale_y_continuous("Consumo de Oxigeno")
ConsumO2
ConsumO2_mol=ggplot(moluscos,aes(x= c_agua, y=cons_o, fill=molusco))+ geom_boxplot()+ facet_wrap(~molusco)+theme_bw()+ geom_point(position=position_jitterdodge(),alpha=0.4)+ ggtitle("Consumo de Oxigeno por Tipo de Molusco")+ scale_x_discrete(" % Concentracion de Agua de mar")+ scale_y_continuous("Consumo de Oxigeno")
ConsumO2_mol
b Estime el modelo de diseño de experimentos el cual permita evaluar el efecto de la concentración de agua de mar y los tipos de molusco sobre el consumo de oxigeno. Interprete los coeficientes del modelo, el valor p y realice un post anova de considerarlo necesario para los factores.
Se corren dos modelos. En el primer modelo se asume que existe una interacción entre el % de concentración del agua de mar y los 2 moluscos del experimento. En el segundo modelo no se asume esta interacción entre el % de concentración y los moluscos.
Modelo 1.
intercepto (b0)= No se identifica una explicación para este b de acuerdo a las caracteristicas del experimento.
c_agua50:moluscoA (B1)= Con una concentración del 50% el molusco A incrementa su consumo de O2 en 4.78 puntos. Esta variable es significativa al tener un valor p inferior a 0.05.
c_agua75:moluscoA (B2)= Con una concentración del 75% el molusco A incrementa su consumo de O2 en 0.48 puntos. Esta variable no es significativa al tener un valor p superior a 0.05.
c_agua100:moluscoA (B3)= Con una concentración del 100% el molusco A incrementa su consumo de O2 en 2.53 puntos. Esta variable no es significativa al tener un valor p superior a 0.05.
c_agua50:moluscoB (B4)= Con una concentración del 50% el molusco A incrementa su consumo de O2 en 4.92 puntos. Esta variable es significativa al tener un valor p inferior a 0.05.
c_agua75:moluscoB (B5)= Con una concentración del 75% el molusco A decrece su consumo de O2 en -1.31 puntos. Esta variable no es significativa al tener un valor p superior a 0.05.
c_agua100:moluscoB (B6)= Esta interacción no genera un valor para el Bo,puesto que R “cuando se intenta ajustar un modelo que sufre de falta de identidad, se excluyen automáticamente variables empezando por el final de la fórmula empleada para definir el modelo hasta alcanzar la identidad”.Esta violación de la identidad puede darse al generarse la combinación entre los predictores.
Modelo 2.
intercepto (B0)= Con una concentración del 50% (categoria referencia) el molusco A (Categoria referencia) incrementa el consumo de O2 en 12.94 puntos.
c_agua75(B1)= Con una concentración del 75% se reduce el consumo de O2 en 5.2581 puntos en comparación al nivel del 50%. Esta variable es significativa al tener un valor p inferior a 0.05.
c_agua100 (B2)= Con una concentración del 100% se reduce el consumo de O2 en 3.57 puntos en comparación al nivel del 50%. Esta variable es significativa al tener un valor p inferior a 0.05.
moluscoB (B3)= El molusco B disminuye el consumo de O2 en 1.39 puntos en comparación al molusco a. Esta variable es significativa al tener un valor p inferior a 0.05.
A partir de los resultados de los modelos se utiliza la prueba ANOVA para validar si hay una diferencia en las medias de los grupos en cada nivel de la variable independiente.
Modelo 1. El resultado indica que la interacción entre el molusco y el nivel de concentración de agua de mar es significativo.
Modelo 2. El resultado indica que el nivel de concentración de agua de mar es signficativo más no los moluscos.
De acuerdo a estos resultados se decide continuar el analisis con el modelo 1, para el cual se procede a realizar un postanova, con el proposito de identificar que grupos de factores tienen medias similares y cuales no. De acuerdo a esto se tiene:
Una concentración del 50% aumenta el consumo para cualquiera de los 2 moluscos sin diferencias estadisticamente significativas.
Una concentración del 100% aumenta el consumo para el molusco A pero en menor proporción a una concentración del 50% para cualquiera de los 2 tipos de moluscos.
Para las demás combinaciones de concentración y tipos de moluscos el efecto baja casi a la mitad en comparación a la concentración del 50% para cualquiera de los 2 tipos de moluscos
mod_mol=lm(cons_o~c_agua:molusco,moluscos)
mod_mol2=lm(cons_o~c_agua+molusco,moluscos)
summary(mod_mol)
##
## Call:
## lm(formula = cons_o ~ c_agua:molusco, data = moluscos)
##
## Residuals:
## Min 1Q Median 3Q Max
## -5.946 -1.736 -0.710 2.237 6.625
##
## Coefficients: (1 not defined because of singularities)
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 7.4063 1.0466 7.077 1.13e-08 ***
## c_agua50:moluscoA 4.7687 1.4800 3.222 0.00246 **
## c_agua75:moluscoA 0.4837 1.4800 0.327 0.74541
## c_agua100:moluscoA 2.5300 1.4800 1.709 0.09476 .
## c_agua50:moluscoB 4.9200 1.4800 3.324 0.00185 **
## c_agua75:moluscoB -1.3113 1.4800 -0.886 0.38069
## c_agua100:moluscoB NA NA NA NA
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 2.96 on 42 degrees of freedom
## Multiple R-squared: 0.4226, Adjusted R-squared: 0.3539
## F-statistic: 6.149 on 5 and 42 DF, p-value: 0.0002324
summary(mod_mol2)
##
## Call:
## lm(formula = cons_o ~ c_agua + molusco, data = moluscos)
##
## 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) 12.9463 0.8521 15.193 < 2e-16 ***
## c_agua75 -5.2581 1.0436 -5.038 8.49e-06 ***
## c_agua100 -3.5794 1.0436 -3.430 0.00132 **
## moluscoB -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
anova(mod_mol)
| Df | Sum Sq | Mean Sq | F value | Pr(>F) | |
|---|---|---|---|---|---|
| c_agua:molusco | 5 | 269.3992 | 53.87985 | 6.149144 | 0.0002324 |
| Residuals | 42 | 368.0112 | 8.76217 | NA | NA |
anova(mod_mol2)
| Df | Sum Sq | Mean Sq | F value | Pr(>F) | |
|---|---|---|---|---|---|
| c_agua | 2 | 230.81603 | 115.408015 | 13.245654 | 0.0000314 |
| molusco | 1 | 23.22692 | 23.226919 | 2.665809 | 0.1096627 |
| Residuals | 44 | 383.36745 | 8.712897 | NA | NA |
require(agricolae)
## Loading required package: agricolae
comp_moluscos= LSD.test(mod_mol,c("c_agua","molusco"))
comp_moluscos
## $statistics
## MSerror Df Mean CV t.value LSD
## 8.762171 42 9.304792 31.8126 2.018082 2.986858
##
## $parameters
## test p.ajusted name.t ntr alpha
## Fisher-LSD none c_agua:molusco 6 0.05
##
## $means
## cons_o std r LCL UCL Min Max Q25 Q50 Q75
## 100:A 9.93625 2.747976 8 7.824222 12.048278 6.78 14.00 7.9850 9.295 11.7250
## 100:B 7.40625 2.844076 8 5.294222 9.518278 3.68 11.60 5.7225 6.140 10.1000
## 50:A 12.17500 3.090178 8 10.062972 14.287028 9.74 18.80 10.3100 11.110 12.5000
## 50:B 12.32625 3.517909 8 10.214222 14.438278 6.38 17.70 10.0575 12.850 14.5000
## 75:A 7.89000 2.739578 8 5.777972 10.002028 5.20 13.20 6.0775 7.180 8.8925
## 75:B 6.09500 2.739108 8 3.982972 8.207028 1.80 9.96 4.8300 5.595 7.3425
##
## $comparison
## NULL
##
## $groups
## cons_o groups
## 50:B 12.32625 a
## 50:A 12.17500 a
## 100:A 9.93625 ab
## 75:A 7.89000 bc
## 100:B 7.40625 bc
## 75:B 6.09500 c
##
## attr(,"class")
## [1] "group"
2 Para estudiar la relación entre ciertas características del suelo y la producción de biomasa (gr) de una planta forrajera natural se obtuvieron 45 muestras en diferentes ambientes, y en cada muestra se estimó la biomasa (respuesta Y) y se registraron las características (covariables X) del suelo en el que crecía (pH, Salinidad, Zinc y Potasio).
a Realice un análisis de correlaciones que permita identificar de manera bivariada las relaciones entre las covariables y la respuesta (incluir coeficiente de correlación e interpretaciones).
Biomasa_PH: Existe una relación positiva entre las dos variables, lo cual indica que se mueven en la misma dirección. De acuerdo al coeficiente de correlación de 0,9281 esta relación es muy fuerte por estar cercano a 1.
Biomasa_Salinidad: Esiste una relación inversa entre las dos variables, la cual indica que se mueven en sentido contrario. De acuerdo al coeficiente de correlación de -0.066 esta relación es debil al estar cerca de 0.
Biomasa_Zinc: Esiste una relación inversa entre las dos variables, la cual indica que se mueven en sentido contrario. De acuerdo al coeficiente de correlación de -0.7814 esta relación es fuerte al estar cerca de 1.
Biomasa_Potasio: Esiste una relación inversa entre las dos variables, la cual indica que se mueven en sentido contrario. De acuerdo al coeficiente de correlación de -0.0731 esta relación es debil al estar cerca de 0.
load("C:/Users/jdiaz/Downloads/Salinidad.RData")
salinidad= data.frame(Salinidad)
library(GGally)
## Registered S3 method overwritten by 'GGally':
## method from
## +.gg ggplot2
library(dplyr)
##
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
##
## filter, lag
## The following objects are masked from 'package:base':
##
## intersect, setdiff, setequal, union
head(salinidad)
| Biomasa | pH | Salinidad | Zinc | Potasio |
|---|---|---|---|---|
| 765.280 | 5.00 | 33 | 16.4524 | 1441.67 |
| 954.017 | 4.70 | 35 | 13.9852 | 1299.19 |
| 827.686 | 4.20 | 32 | 15.3276 | 1154.27 |
| 755.072 | 4.40 | 30 | 17.3128 | 1045.15 |
| 896.176 | 5.55 | 33 | 22.3312 | 521.62 |
| 1422.836 | 5.50 | 33 | 12.2778 | 1273.02 |
cor(salinidad)
## Biomasa pH Salinidad Zinc Potasio
## Biomasa 1.00000000 0.92810235 -0.06657756 -0.78146249 -0.07319518
## pH 0.92810235 1.00000000 -0.04458851 -0.72046995 0.03236212
## Salinidad -0.06657756 -0.04458851 1.00000000 -0.42663388 -0.01963288
## Zinc -0.78146249 -0.72046995 -0.42663388 1.00000000 0.07877268
## Potasio -0.07319518 0.03236212 -0.01963288 0.07877268 1.00000000
ggpairs(select_if(salinidad, is.numeric), lower = list(combo = wrap("facethist", binwidth = 0.6),continuous = "smooth"),diag = list(continuous = "barDiag"), axisLabels = "none")
## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
b Estime el modelo de regresión lineal múltiple para explicar la biomasa en función de las covariables e interprete el valor p, los coeficientes de las variables significativas y el coeficiente R2.
Modelo Biomasa (Variables significativas)
\(Biomasa= 1492.8076+262.8829∗(pH)−33.500∗(Salinidad)−28.973∗(Zinc)\)
\(Bo\)= Una planta de la muestra produce 1492 gramos de biomasa asociado posiblemente a factores diferentes a los estimados en el modelo que solo contemplan variables asociadas al suelo.
\(B1 PH\)= Por cada punto de PH se generan 262 gramos de biomasa.El valor p es inferior de 1.51e-09 es inferior al valor de 0,05 por lo cual se considera significativa.
\(B2 Salinidad\)= Por cada punto/unidad de salinidad del suelo se generan -33.5 gramos de biomasa de la planta.El valor p es inferior de 0.000391 es inferior al valor de 0,05 por lo cual se considera significativa.
\(B3 Zinc\)= Por cada punto/unidad de Zinc del suelo se generan -28.9 gramos de biomasa de la planta.El valor p es inferior de 8.20e-06 es inferior al valor de 0,05 por lo cual se considera significativa.
El valor \(R2 ajustado\) es de 0.9154, lo cual indica que explica el 91,5% de la biomasa generada por las plantas de la muestra.
mod_bio=lm(Biomasa ~., salinidad)
mod_bio
##
## Call:
## lm(formula = Biomasa ~ ., data = salinidad)
##
## Coefficients:
## (Intercept) pH Salinidad Zinc Potasio
## 1492.808 262.883 -33.500 -28.973 -0.115
summary(mod_bio)
##
## Call:
## lm(formula = Biomasa ~ ., data = salinidad)
##
## Residuals:
## Min 1Q Median 3Q Max
## -293.98 -88.83 -9.48 88.20 387.27
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 1492.8076 453.6013 3.291 0.002091 **
## pH 262.8829 33.7304 7.794 1.51e-09 ***
## Salinidad -33.4997 8.6525 -3.872 0.000391 ***
## Zinc -28.9727 5.6643 -5.115 8.20e-06 ***
## Potasio -0.1150 0.0819 -1.404 0.167979
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 158.9 on 40 degrees of freedom
## Multiple R-squared: 0.9231, Adjusted R-squared: 0.9154
## F-statistic: 120 on 4 and 40 DF, p-value: < 2.2e-16