U1EV1

David Picos

14/10/2020

El objetivo es observar el comportamiento de una granga acuicola de cultivo de camaron, esta granja posee 12 tanques y a lo largo de 12 semanas se desea que estos lleguen a pesar 12 gramos, sin embargo solo 3 estanques lograron llegar al peso, con ayuda de la estadistica planeamos determinar la relación por la cuál algunos estanque si lograron el peso y los otros 9 no.

Importacion de los datos

library(pacman)
p_load("readr","DT","prettydoc","fdth","modeest", "tidyverse", "gganimate", "gifski", "plotly")
CAMARONES <- read_csv("CAMARONES.csv")
## Parsed with column specification:
## cols(
##   Estanque = col_character(),
##   EstanqueN = col_double(),
##   Superficie = col_double(),
##   Dias = col_double(),
##   Semana = col_double(),
##   PesoAnterior = col_double(),
##   PesoActual = col_double(),
##   TamanioAlimento = col_double(),
##   AlimentoSemana = col_double(),
##   AlimentoDiario = col_double()
## )
camdefectos <- read_csv("camdefectos.csv")
## Parsed with column specification:
## cols(
##   PesoActual = col_double(),
##   Defecto = col_double()
## )
  • Filtración de los datos del peso actual para cada uno de los tanques
peso_e1 <- t(CAMARONES$PesoActual [CAMARONES$Estanque == "Estanque 1"])

peso_e2 <- t(CAMARONES$PesoActual [CAMARONES$Estanque == "Estanque 2"])

peso_e3 <- t(CAMARONES$PesoActual [CAMARONES$Estanque == "Estanque 3"])

peso_e4 <- t(CAMARONES$PesoActual [CAMARONES$Estanque == "Estanque 4"])

peso_e5 <- t(CAMARONES$PesoActual [CAMARONES$Estanque == "Estanque 5"])

peso_e6 <- t(CAMARONES$PesoActual [CAMARONES$Estanque == "Estanque 6"])

peso_e7 <- t(CAMARONES$PesoActual [CAMARONES$Estanque == "Estanque 7"])

peso_e8 <- t(CAMARONES$PesoActual [CAMARONES$Estanque == "Estanque 8"])

peso_e9 <- t(CAMARONES$PesoActual [CAMARONES$Estanque == "Estanque 9"])

peso_e10 <- t(CAMARONES$PesoActual [CAMARONES$Estanque == "Estanque 10"])

peso_e11 <- t(CAMARONES$PesoActual [CAMARONES$Estanque == "Estanque 11"])

peso_e12 <- t(CAMARONES$PesoActual [CAMARONES$Estanque == "Estanque 12"])
  • Segunda filtracion de los datos empezando a tomar sus pesos desde la semana 2 hasta la semana 12
Semanas <- seq(from = as.character("2"), to = as.character("12"))
vec1 <- as.vector(peso_e1)
vec2 <- vec1[1:11]
num1 <- as.numeric(vec2)
pEstanque1 <- as.vector(num1)

vec1 <- as.vector(peso_e2)
vec2 <- vec1[1:11]
num1 <- as.numeric(vec2)
pEstanque2 <- as.vector(num1)

vec1 <- as.vector(peso_e3)
vec2 <- vec1[1:11]
num1 <- as.numeric(vec2)
pEstanque3 <- as.vector(num1)

vec1 <- as.vector(peso_e4)
vec2 <- vec1[1:11]
num1 <- as.numeric(vec2)
pEstanque4 <- as.vector(num1)

vec1 <- as.vector(peso_e5)
vec2 <- vec1[1:11]
num1 <- as.numeric(vec2)
pEstanque5 <- as.vector(num1)

vec1 <- as.vector(peso_e6)
vec2 <- vec1[1:11]
num1 <- as.numeric(vec2)
pEstanque6 <- as.vector(num1)

vec1 <- as.vector(peso_e7)
vec2 <- vec1[1:11]
num1 <- as.numeric(vec2)
pEstanque7 <- as.vector(num1)

vec1 <- as.vector(peso_e8)
vec2 <- vec1[1:11]
num1 <- as.numeric(vec2)
pEstanque8 <- as.vector(num1)

vec1 <- as.vector(peso_e9)
vec2 <- vec1[1:11]
num1 <- as.numeric(vec2)
pEstanque9 <- as.vector(num1)

vec1 <- as.vector(peso_e10)
vec2 <- vec1[1:11]
num1 <- as.numeric(vec2)
pEstanque10 <- as.vector(num1)

vec1 <- as.vector(peso_e11)
vec2 <- vec1[1:11]
num1 <- as.numeric(vec2)
pEstanque11 <- as.vector(num1)

vec1 <- as.vector(peso_e12)
vec2 <- vec1[1:11]
num1 <- as.numeric(vec2)
pEstanque12 <- as.vector(num1)

1- descripción exploratoria de los datos (MMM, MD, CB)

  • Media, Mediana y Moda
### Media, Mediana y Moda del peso del estanque 1
mean(pEstanque1)
## [1] 5.606364
median(pEstanque1)
## [1] 4.32
mfv(pEstanque1)
##  [1]  0.77  1.32  2.03  3.13  4.25  4.32  6.21  7.64  9.46 10.36 12.18
### Media, Mediana y Moda del peso del estanque 2
mean(pEstanque2)
## [1] 5.153636
median(pEstanque2)
## [1] 4.42
mfv(pEstanque2)
##  [1]  0.78  1.32  1.96  3.01  3.52  4.42  6.31  6.95  8.02  9.23 11.17
### Media, Mediana y Moda del peso del estanque 3
mean(pEstanque3)
## [1] 5.312727
median(pEstanque3)
## [1] 5.02
mfv(pEstanque3)
##  [1]  0.69  1.37  1.73  2.86  4.05  5.02  5.81  6.21  8.69 10.36 11.65
### Media, Mediana y Moda del peso del estanque 4
mean(pEstanque4)
## [1] 5.183636
median(pEstanque4)
## [1] 4.71
mfv(pEstanque4)
##  [1]  0.72  1.45  2.45  3.38  4.09  4.71  5.33  6.53  8.32  9.37 10.67
### Media, Mediana y Moda del peso del estanque 5
mean(pEstanque5)
## [1] 5.187273
median(pEstanque5)
## [1] 4.29
mfv(pEstanque5)
##  [1]  0.61  1.49  2.36  3.06  3.90  4.29  5.53  6.08  8.40  9.72 11.62
### Media, Mediana y Moda del peso del estanque 6
mean(pEstanque6)
## [1] 5.081818
median(pEstanque6)
## [1] 4.03
mfv(pEstanque6)
##  [1]  0.62  1.43  1.83  2.91  3.42  4.03  5.33  6.51  8.51 10.19 11.12
### Media, Mediana y Moda del peso del estanque 7
mean(pEstanque7)
## [1] 5.059091
median(pEstanque7)
## [1] 4
mfv(pEstanque7)
##  [1]  0.64  1.32  1.77  2.88  3.91  4.00  5.29  6.42  7.88 10.01 11.53
### Media, Mediana y Moda del peso del estanque 8
mean(pEstanque8)
## [1] 5.445455
median(pEstanque8)
## [1] 5.04
mfv(pEstanque8)
##  [1]  0.62  1.38  2.08  3.58  4.20  5.04  5.65  7.09  7.94 10.06 12.26
### Media, Mediana y Moda del peso del estanque 9
mean(pEstanque9)
## [1] 5.732727
median(pEstanque9)
## [1] 5.21
mfv(pEstanque9)
##  [1]  0.70  1.75  2.14  3.62  4.95  5.21  6.93  6.99  8.83 10.13 11.81
### Media, Mediana y Moda del peso del estanque 10
mean(pEstanque10)
## [1] 5.293636
median(pEstanque10)
## [1] 4.75
mfv(pEstanque10)
##  [1]  0.62  1.74  2.17  3.34  4.50  4.75  5.83  6.65  8.01  9.41 11.21
### Media, Mediana y Moda del peso del estanque 11
mean(pEstanque11)
## [1] 5.094545
median(pEstanque11)
## [1] 4.64
mfv(pEstanque11)
##  [1]  0.71  1.57  2.09  3.19  3.85  4.64  5.72  6.00  8.00  9.01 11.26
### Media, Mediana y Moda del peso del estanque 12
mean(pEstanque12)
## [1] 5.305455
median(pEstanque12)
## [1] 5.17
mfv(pEstanque12)
##  [1]  0.60  1.39  1.93  2.97  4.17  5.17  5.86  6.25  7.85 10.12 12.05
  • Amplitud
#### Estanque 1
vmax <- max(pEstanque1)
vmin <- min(pEstanque1)
amp <- (vmax-vmin)
#### Estanque 2
vmax <- max(pEstanque2)
vmin <- min(pEstanque2)
amp <- (vmax-vmin)
#### Estanque 3
vmax <- max(pEstanque3)
vmin <- min(pEstanque3)
amp <- (vmax-vmin)
#### Estanque 4
vmax <- max(pEstanque4)
vmin <- min(pEstanque4)
amp <- (vmax-vmin)
#### Estanque 5
vmax <- max(pEstanque5)
vmin <- min(pEstanque5)
amp <- (vmax-vmin)
#### Estanque 6
vmax <- max(pEstanque6)
vmin <- min(pEstanque6)
amp <- (vmax-vmin)
#### Estanque 7
vmax <- max(pEstanque7)
vmin <- min(pEstanque7)
amp <- (vmax-vmin)
#### Estanque 8
vmax <- max(pEstanque8)
vmin <- min(pEstanque8)
amp <- (vmax-vmin)
#### Estanque 9
vmax <- max(pEstanque9)
vmin <- min(pEstanque9)
amp <- (vmax-vmin)
#### Estanque 10
vmax <- max(pEstanque10)
vmin <- min(pEstanque10)
amp <- (vmax-vmin)
#### Estanque 11
vmax <- max(pEstanque11)
vmin <- min(pEstanque11)
amp <- (vmax-vmin)
#### Estanque 12
vmax <- max(pEstanque12)
vmin <- min(pEstanque12)
amp <- (vmax-vmin)
  • Varianza
#### Estanque 1
var(pEstanque1)
## [1] 14.93409
#### Estanque 2
var(pEstanque2)
## [1] 11.74205
#### Estanque 3
var(pEstanque3)
## [1] 13.5541
#### Estanque 4
var(pEstanque4)
## [1] 10.53071
#### Estanque 5
var(pEstanque5)
## [1] 12.27638
#### Estanque 6
var(pEstanque6)
## [1] 12.88096
#### Estanque 7
var(pEstanque7)
## [1] 12.77649
#### Estanque 8
var(pEstanque8)
## [1] 13.30359
#### Estanque 9
var(pEstanque9)
## [1] 12.83242
#### Estanque 10
var(pEstanque10)
## [1] 11.04243
#### Estanque 11
var(pEstanque11)
## [1] 10.90531
#### Estanque 12
var(pEstanque12)
## [1] 13.19709
  • Desviación estándar
#### Estanque 1
sd(pEstanque1)
## [1] 3.864464
#### Estanque 2
sd(pEstanque2)
## [1] 3.426667
#### Estanque 3
sd(pEstanque3)
## [1] 3.68159
#### Estanque 4
sd(pEstanque4)
## [1] 3.245105
#### Estanque 5
sd(pEstanque5)
## [1] 3.503767
#### Estanque 6
sd(pEstanque6)
## [1] 3.589005
#### Estanque 7
sd(pEstanque7)
## [1] 3.574422
#### Estanque 8
sd(pEstanque8)
## [1] 3.647408
#### Estanque 9
sd(pEstanque9)
## [1] 3.582237
#### Estanque 10
sd(pEstanque10)
## [1] 3.323015
#### Estanque 11
sd(pEstanque11) 
## [1] 3.302318
#### Estanque 12
sd(pEstanque12)
## [1] 3.63278
  • Gráfico de caja y bigote
### Estanque 1
summary(pEstanque1)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##   0.770   2.580   4.320   5.606   8.550  12.180
boxplot(pEstanque1)

### Estanque 2
summary(pEstanque2)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##   0.780   2.485   4.420   5.154   7.485  11.170
boxplot(pEstanque2)

### Estanque 3
summary(pEstanque3)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##   0.690   2.295   5.020   5.313   7.450  11.650
boxplot(pEstanque3)

### Estanque 4
summary(pEstanque4)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##   0.720   2.915   4.710   5.184   7.425  10.670
boxplot(pEstanque4)

### Estanque 5
summary(pEstanque5)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##   0.610   2.710   4.290   5.187   7.240  11.620
boxplot(pEstanque5)

### Estanque 6
summary(pEstanque6)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##   0.620   2.370   4.030   5.082   7.510  11.120
boxplot(pEstanque6)

### Estanque 7
summary(pEstanque7)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##   0.640   2.325   4.000   5.059   7.150  11.530
boxplot(pEstanque7)

### Estanque 8
summary(pEstanque8)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##   0.620   2.830   5.040   5.445   7.515  12.260
boxplot(pEstanque8)

### Estanque 9
summary(pEstanque9)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##   0.700   2.880   5.210   5.733   7.910  11.810
boxplot(pEstanque9)

### Estanque 10
summary(pEstanque10)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##   0.620   2.755   4.750   5.294   7.330  11.210
boxplot(pEstanque10)

### Estanque 11
summary(pEstanque11)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##   0.710   2.640   4.640   5.095   7.000  11.260
boxplot(pEstanque11)

### Estanque 12
summary(pEstanque12)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##   0.600   2.450   5.170   5.305   7.050  12.050
boxplot(pEstanque12)

2- ¿Que tienen de diferentes los estanques que SI llegaron a 12 gramos en la semana 12 con respecto a los que no?

Después de analizar los datos no se observa nada diferente entre los tanques los mismos reciben la misma cantidad de comida diaria en relacion al tamaño se los tanques en los que se encuentrax

3- variables con las cuales se relaciona el aumento de peso de los camarones

#Regresion lineal * Recta de mínimos cuadrados

reg <- lm(PesoActual ~ AlimentoDiario, data = CAMARONES)
summary(reg)
## 
## Call:
## lm(formula = PesoActual ~ AlimentoDiario, data = CAMARONES)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -2.3032 -0.6334 -0.0752  0.6261  3.8672 
## 
## Coefficients:
##                 Estimate Std. Error t value Pr(>|t|)    
## (Intercept)    -1.351719   0.209245   -6.46 1.92e-09 ***
## AlimentoDiario  0.045363   0.001287   35.25  < 2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 1.047 on 130 degrees of freedom
## Multiple R-squared:  0.9053, Adjusted R-squared:  0.9046 
## F-statistic:  1243 on 1 and 130 DF,  p-value: < 2.2e-16
  • Ecuación de la recta de mínimos cuadrados

\[y = -1.351719 + 0.045363x\]

  • Intervalos de confianza
confint(reg)
##                      2.5 %      97.5 %
## (Intercept)    -1.76568525 -0.93775247
## AlimentoDiario  0.04281706  0.04790871

Análisis gráfico de residuos

par(mfrow=c(1,2))
plot(reg)

### Prueba de Shapiro-Wilk*

shapiro.test(reg$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  reg$residuals
## W = 0.97739, p-value = 0.02667

Matriz de correlación

PesoA <- CAMARONES$PesoActual
AlimD <- CAMARONES$AlimentoDiario
rel <- data_frame(PesoA,AlimD)
## Warning: `data_frame()` is deprecated as of tibble 1.1.0.
## Please use `tibble()` instead.
## This warning is displayed once every 8 hours.
## Call `lifecycle::last_warnings()` to see where this warning was generated.
pairs(rel)

4- ¿Los camarones que iniciaron con mayor peso ( semana 2) son también los que terminaron en mayor peso? ¿Cómo varía el crecimiento?

No necesariamnete, de los 3 que iniciaron con mayor peso en la semana 2 los cuales fueron los tanques 1, 2 y 4 el unico que termino con uno de los tanques con mayor peso y que logro sobrepasar los 12 gramos que se tenia como objetivo

sort(peso_e1)
##  [1]  0.77  1.32  2.03  3.13  4.25  4.32  6.21  7.64  9.46 10.36 12.18
sort(peso_e2)
##  [1]  0.78  1.32  1.96  3.01  3.52  4.42  6.31  6.95  8.02  9.23 11.17
sort(peso_e4)
##  [1]  0.72  1.45  2.45  3.38  4.09  4.71  5.33  6.53  8.32  9.37 10.67

5- Regresión logística

plot(CAMARONES$AlimentoDiario,CAMARONES$PesoActual, xlab = "Comida diaria proporcionada", ylab = "Peso en gramos del camaron")
abline(reg)

colores <- NULL
colores[camdefectos$Defecto==0] <- "red"
colores[camdefectos$Defecto==1] <- "green"
plot(CAMARONES$AlimentoDiario, camdefectos$Defecto, pch = 21, bg = colores, xlab = 'Alimento diario', ylab = 'Probabilidad de defectos')
legend("bottomleft", c('Peso no deseado', 'Peso deseado'), pch = 21, col = c('red', 'green'))

Colores <- NULL
datos <- data.frame(AlimentoDiario=seq(57.43,296.43,0.1))
probabilidades <- predict(reg, datos, type = "response")
Colores[CAMARONES$PesoActual<12] <- "red"
Colores[CAMARONES$PesoActual>=12] <- "green"
plot(CAMARONES$AlimentoDiario,CAMARONES$PesoActual, pch=21, bg=Colores, xlab = "Comida diaria proporcionada", ylab = "Probabilidad de peso de los camarones")
legend('bottomright', c('Peso logrado','Peso no logrado'), pch=21, col = c('green','red'))

lines(datos$AlimentoDiario, probabilidades, col = "blue", lwd = 3)