1.

###A.

se realizara un anilisis exploratorio para observar la relacion entre el consumo de oxigeno y las distintas concentraciones de agua de mar en dos tipos u/ o especies de moluscos.

Primero se realiza el llamdo a la tabla de moluscos

load("D:/Descargas/YDRAY-moluscos.RData")
summary(BD_moluscos)
##      c_agua      molusco              cons_o      
##  Min.   : 50   Length:48          Min.   : 1.800  
##  1st Qu.: 50   Class :character   1st Qu.: 6.312  
##  Median : 75   Mode  :character   Median : 9.700  
##  Mean   : 75                      Mean   : 9.305  
##  3rd Qu.:100                      3rd Qu.:11.232  
##  Max.   :100                      Max.   :18.800
attach(BD_moluscos)
tapply(cons_o,c_agua, mean,na.rm=TRUE)
##       50       75      100 
## 12.25062  6.99250  8.67125
tapply(cons_o,molusco, mean,na.rm=TRUE)
##         A         B 
## 10.000417  8.609167

segun los valores observados el la funcion summary y taply podemos destacar que los promedios de consumo de ox?geno para las 3 concentraciones de agua son de 12.2, 6.99 y 8.67 respectivamente.

Los promedios de consumo de ox?geno para los tipos de moluscos son 10 para molusco A, y 8.6 consumo de ox?geno para el tipo B.

require(ggplot2)
## Loading required package: ggplot2
require(Tidyverse)
## Loading required package: Tidyverse
## Warning in library(package, lib.loc = lib.loc, character.only = TRUE,
## logical.return = TRUE, : there is no package called 'Tidyverse'
ggplot(data=BD_moluscos,aes(x=c_agua,y=cons_o, colour=molusco))+geom_point()+geom_smooth()+facet_grid(~molusco)
## `geom_smooth()` using method = 'loess' and formula 'y ~ x'
## Warning in simpleLoess(y, x, w, span, degree = degree, parametric =
## parametric, : pseudoinverse used at 49.75
## Warning in simpleLoess(y, x, w, span, degree = degree, parametric =
## parametric, : neighborhood radius 50.25
## Warning in simpleLoess(y, x, w, span, degree = degree, parametric =
## parametric, : reciprocal condition number 3.0071e-017
## Warning in simpleLoess(y, x, w, span, degree = degree, parametric =
## parametric, : There are other near singularities as well. 2525.1
## Warning in predLoess(object$y, object$x, newx = if
## (is.null(newdata)) object$x else if (is.data.frame(newdata))
## as.matrix(model.frame(delete.response(terms(object)), : pseudoinverse used at
## 49.75
## Warning in predLoess(object$y, object$x, newx = if
## (is.null(newdata)) object$x else if (is.data.frame(newdata))
## as.matrix(model.frame(delete.response(terms(object)), : neighborhood radius
## 50.25
## Warning in predLoess(object$y, object$x, newx = if
## (is.null(newdata)) object$x else if (is.data.frame(newdata))
## as.matrix(model.frame(delete.response(terms(object)), : reciprocal condition
## number 3.0071e-017
## Warning in predLoess(object$y, object$x, newx = if
## (is.null(newdata)) object$x else if (is.data.frame(newdata))
## as.matrix(model.frame(delete.response(terms(object)), : There are other near
## singularities as well. 2525.1
## Warning in simpleLoess(y, x, w, span, degree = degree, parametric =
## parametric, : pseudoinverse used at 49.75
## Warning in simpleLoess(y, x, w, span, degree = degree, parametric =
## parametric, : neighborhood radius 50.25
## Warning in simpleLoess(y, x, w, span, degree = degree, parametric =
## parametric, : reciprocal condition number 3.0071e-017
## Warning in simpleLoess(y, x, w, span, degree = degree, parametric =
## parametric, : There are other near singularities as well. 2525.1
## Warning in predLoess(object$y, object$x, newx = if
## (is.null(newdata)) object$x else if (is.data.frame(newdata))
## as.matrix(model.frame(delete.response(terms(object)), : pseudoinverse used at
## 49.75
## Warning in predLoess(object$y, object$x, newx = if
## (is.null(newdata)) object$x else if (is.data.frame(newdata))
## as.matrix(model.frame(delete.response(terms(object)), : neighborhood radius
## 50.25
## Warning in predLoess(object$y, object$x, newx = if
## (is.null(newdata)) object$x else if (is.data.frame(newdata))
## as.matrix(model.frame(delete.response(terms(object)), : reciprocal condition
## number 3.0071e-017
## Warning in predLoess(object$y, object$x, newx = if
## (is.null(newdata)) object$x else if (is.data.frame(newdata))
## as.matrix(model.frame(delete.response(terms(object)), : There are other near
## singularities as well. 2525.1

en esta grafica se observa los promedios de los datos del proceso anterior, donde en el eje y se observa el consumo de ox?geno, en el eje x la concentraci?n de agua de mar.Tambi?n se puede concluir que tanto el molusco del tipo A como del tipo B consumen m?s ox?geno al 50% de concentraci?n de agua de mar, sin embargo parece que el molusco tipo B consume m?s ox?geno que le tipo A en este porcentaje.

###b.

Primer Modelo: Consumo de xigeno vs tipo de molusco

regresion y anova

mod=lm(cons_o~molusco,data=BD_moluscos)
summary(mod) 
## 
## Call:
## lm(formula = cons_o ~ molusco, data = BD_moluscos)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -6.8092 -2.8254 -0.2604  1.7930  9.0908 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  10.0004     0.7459  13.408   <2e-16 ***
## moluscoB     -1.3913     1.0548  -1.319    0.194    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 3.654 on 46 degrees of freedom
## Multiple R-squared:  0.03644,    Adjusted R-squared:  0.01549 
## F-statistic:  1.74 on 1 and 46 DF,  p-value: 0.1937
anova(mod)
## Analysis of Variance Table
## 
## Response: cons_o
##           Df Sum Sq Mean Sq F value Pr(>F)
## molusco    1  23.23  23.227  1.7396 0.1937
## Residuals 46 614.18  13.352

Los resultados del primer modelo podemos observar que los moluscos tipo A tienen un valor p significativo. Los moluscos tipo B no poseen un valor de p significativo.

Lo cual nos lleva a realizar una prueba anova, este no cumple con el valor p significativo, por lo tanto no es necesario hacer un postanova ya que no existe diferencias en el modelo.

####Segundo modelo: consumo de ox?geno vs concentraciones de agua de mar

BD_moluscos$c_agua_=as.factor(BD_moluscos$c_agua)

mod2=lm(cons_o~c_agua_,data=BD_moluscos)
summary(mod2)
## 
## 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_agua_75    -5.2581     1.0627  -4.948 1.09e-05 ***
## c_agua_100   -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

Se observan diferencias en el segundo modelo y se realizara una pruba postanova.

###Postanova segundo modelo

require(agricolae)
## Loading required package: agricolae
PA=LSD.test(mod2,"c_agua_")
PA
## $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 c_agua_   3  0.05
## 
## $means
##       cons_o      std  r       LCL       UCL  Min  Max    Q25    Q50     Q75
## 100  8.67125 3.000940 16  7.157702 10.184798 3.68 14.0  6.140  8.595 10.5750
## 50  12.25062 3.199643 16 10.737077 13.764173 6.38 18.8 10.085 11.455 14.5000
## 75   6.99250 2.804093 16  5.478952  8.506048 1.80 13.2  5.200  6.430  8.7675
## 
## $comparison
## NULL
## 
## $groups
##       cons_o groups
## 50  12.25062      a
## 100  8.67125      b
## 75   6.99250      b
## 
## attr(,"class")
## [1] "group"

Se pueden observar los intervalos de confianza para las concentraciones de agua de mar.No hay diferencia significativa cuando varia el porcentajes de concentraci?n de agua.

###2.

A.

En este analisis podemos identificar las relaciones entre producci?n de Biomasa en funci?n de las otras covariables salinidad, zinc, pH y potasio.

Se realiza el llamado a la base de datos salinidad

load("D:/Descargas/YDRAY-Salinidad.RData")
attach(Salinidad)
## The following object is masked _by_ .GlobalEnv:
## 
##     Salinidad
cor(Biomasa,Salinidad)
##      Biomasa        pH   Salinidad       Zinc     Potasio
## [1,]       1 0.9281023 -0.06657756 -0.7814625 -0.07319518

Podemos observar que segun el analisis que variables Zinc y pH son negativa y positiva respectivamente y la Salinidad y el Potasio tienen poca relacion con la biomasa.

###B.

A pesar de las pruebas anteriores se reliza esta regresion multiple para observar la tendencia de las covariables

mod=lm(Biomasa~pH+Salinidad+Zinc+Potasio,data=Salinidad)
summary(mod)
## 
## Call:
## lm(formula = Biomasa ~ pH + Salinidad + Zinc + Potasio, 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

Se observa que las covariables pH, Salinidad, Zinc son significativos por lo tanto afectan a la biomasa, encambiO la variable potasio no posee un valor p significativo, por locual no genera un efecto en la biomasa.