\[ \LARGE{\text{Tratamientos:}\\\text{ }\\Rojo: 100\% \text{ de capacidad de matera (riego completo)}\\Amarillo: 50\% \text{ - Ácido ascórbico (AS)}\\Azul: 50\% \text{ + AS a 600 partes por millón (ppm)}\\Verde: 50\% \text{ + AS a 1000 partes por millón (ppm)}}\]

Librerias

library(datasets)
library(readxl)
library(tidyverse)
## ── Attaching core tidyverse packages ──────────────────────── tidyverse 2.0.0 ──
## ✔ dplyr     1.1.4     ✔ readr     2.1.4
## ✔ forcats   1.0.0     ✔ stringr   1.5.1
## ✔ ggplot2   3.4.4     ✔ tibble    3.2.1
## ✔ lubridate 1.9.3     ✔ tidyr     1.3.0
## ✔ purrr     1.0.2     
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
## ✖ dplyr::filter() masks stats::filter()
## ✖ dplyr::lag()    masks stats::lag()
## ℹ Use the conflicted package (<http://conflicted.r-lib.org/>) to force all conflicts to become errors
library(ggplot2)
library(multcompView)
library(dplyr)
library(agricolae)

Lectura de datos de cada muestreo.

# Para que me indique la ubicación / dirección del documento que se requiere leer entre mis archivos, ejemplo: "/cloud/project/Datos x muestreo (corregido).xlsx".

# file.choose()
# Para buscar carpetas de los archivos: excel.sheets()

# Primer muestreo --------------------------------------------

M1 <- "/cloud/project/Datos primer muestreo (corregido).xlsx"

# Carpetas

Var_M1 <- read_excel(M1,
                     sheet = 'Variables')

CRA_M1 <- read_excel(M1,
                     sheet = 'CRA')

Ind_M1 <- read_excel(M1,
                     sheet = 'Indices')

# Segundo muestreo --------------------------------------------

M2 <- "/cloud/project/Datos segundo muestreo (corregido).xlsx"

# Carpetas

Var_M2 <- read_excel(M2,
                     sheet = 'Variables')

CRA_M2 <- read_excel(M2,
                     sheet = 'CRA')

Ind_M2 <- read_excel(M2,
                     sheet = 'Indices')

# Tercer muestreo --------------------------------------------

M3 <- "/cloud/project/Datos tercer muestreo (corregido).xlsx"

# Carpetas

Var_M3 <- read_excel(M3,
                     sheet = 'Variables')

CRA_M3 <- read_excel(M3,
                     sheet = 'CRA')

PE_M3 <- read_excel(M3,
                     sheet = 'Pérdida de electrolitos')

Ind_M3 <- read_excel(M3,
                     sheet = 'Indices')

# Cuarto muestreo --------------------------------------------

M4 <- "/cloud/project/Datos cuarto muestreo (corregido).xlsx"

# Carpetas

Var_M4 <- read_excel(M4,
                     sheet = 'Variables')

CRA_M4 <- read_excel(M4,
                     sheet = 'CRA')

Ind_M4 <- read_excel(M4,
                     sheet = 'Indices')

Temperatura de la hoja

Análisis estadístico - Muestreo 1

# Datos - Temperatura de la hoja - Muestreo 1

datos.TH.M1 <- data.frame(Var_M1$`Factor riego`, Var_M1$`Factor ácido ascórbico`, Var_M1$Tratamiento, Var_M1$`Temperatura Hoja (°C)`)
colnames(datos.TH.M1) <- c("F_riego", "F_AA", "Tratamiento", "T_Hoja")
datos.TH.M1
datos.TH.M1$F_riego <- as.factor(datos.TH.M1$F_riego)
datos.TH.M1$F_AA <- as.factor(datos.TH.M1$F_AA)
str(datos.TH.M1)
## 'data.frame':    16 obs. of  4 variables:
##  $ F_riego    : Factor w/ 2 levels "0.5","1": 2 2 2 2 1 1 1 1 1 1 ...
##  $ F_AA       : Factor w/ 3 levels "0 ppm","1000 ppm",..: 1 1 1 1 1 1 1 1 3 3 ...
##  $ Tratamiento: chr  "Control" "Control" "Control" "Control" ...
##  $ T_Hoja     : num  19.2 20 19.2 18.3 20.2 ...
# Anova - Temperatura de la hoja - Muestreo 1
A.TH.M1 <- aov(T_Hoja ~ F_riego*F_AA, data = datos.TH.M1)
summary(A.TH.M1)
##             Df Sum Sq Mean Sq F value Pr(>F)
## F_riego      1  0.626  0.6256   1.382  0.263
## F_AA         2  2.352  1.1758   2.598  0.115
## Residuals   12  5.431  0.4526
  • Los dos tipos de riego y los tres tipos de concentración, como factores independientes, no tienen diferencias significativas, por lo que los resultados no se le puede atribuir a ninguno de estos dos factores, adicionalmente, no hay interacción entre los dos factores, por lo que no hay una combinación representativa de riego y ácido ascórbico para el muestreo 1.
# Prueba de normalidad de residuos
shapiro.test(A.TH.M1$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  A.TH.M1$residuals
## W = 0.93324, p-value = 0.2742
  • El hecho de que no sea significativo (p-value > 0.05), representa que los datos tienen una distribución normal.
TukeyHSD(A.TH.M1)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = T_Hoja ~ F_riego * F_AA, data = datos.TH.M1)
## 
## $F_riego
##             diff      lwr       upr     p adj
## 1-0.5 -0.4566667 -1.30294 0.3896065 0.2625014
## 
## $F_AA
##                        diff        lwr       upr     p adj
## 1000 ppm-0 ppm    0.7891667 -0.3099165 1.8882498 0.1766491
## 600 ppm-0 ppm    -0.1358333 -1.2349165 0.9632498 0.9421195
## 600 ppm-1000 ppm -0.9250000 -2.1941119 0.3441119 0.1688108
  • Los factores no presentan diferencias significativas entre si.
# Anova - Temperatura de la hoja - Muestreo 1 - Comparación entre los tratamientos

A.TH.M1.CT <- aov(T_Hoja ~ Tratamiento, data=datos.TH.M1)
summary(A.TH.M1.CT)
##             Df Sum Sq Mean Sq F value Pr(>F)
## Tratamiento  3  2.977  0.9924   2.193  0.142
## Residuals   12  5.431  0.4526
Tukey_A.TH.M1.CT <- TukeyHSD(A.TH.M1.CT)
Tukey_A.TH.M1.CT
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = T_Hoja ~ Tratamiento, data = datos.TH.M1)
## 
## $Tratamiento
##                                   diff        lwr       upr     p adj
## 50 + AS 1000ppm-50 - AS         0.9525 -0.4598164 2.3648164 0.2403404
## 50 + AS 600ppm-50 - AS          0.0275 -1.3848164 1.4398164 0.9999265
## Control-50 - AS                -0.1300 -1.5423164 1.2823164 0.9924881
## 50 + AS 600ppm-50 + AS 1000ppm -0.9250 -2.3373164 0.4873164 0.2613531
## Control-50 + AS 1000ppm        -1.0825 -2.4948164 0.3298164 0.1585399
## Control-50 + AS 600ppm         -0.1575 -1.5698164 1.2548164 0.9868550
  • Podemos observar que ninguno de los tratamientos tiene diferencias significativas con el control para el muestreo 1.
A.TH.M1.DT <- duncan.test(A.TH.M1.CT, 'Tratamiento', console = T)
## 
## Study: A.TH.M1.CT ~ "Tratamiento"
## 
## Duncan's new multiple range test
## for T_Hoja 
## 
## Mean Square Error:  0.4525875 
## 
## Tratamiento,  means
## 
##                  T_Hoja       std r        se   Min   Max     Q25    Q50    Q75
## 50 - AS         19.3125 0.7474122 4 0.3363731 18.41 20.24 19.0625 19.300 19.550
## 50 + AS 1000ppm 20.2650 0.7558439 4 0.3363731 19.34 21.06 19.8350 20.330 20.760
## 50 + AS 600ppm  19.3400 0.4298837 4 0.3363731 18.78 19.80 19.1550 19.390 19.575
## Control         19.1825 0.7040064 4 0.3363731 18.28 20.00 18.9775 19.225 19.430
## 
## Alpha: 0.05 ; DF Error: 12 
## 
## Critical Range
##        2        3        4 
## 1.036469 1.084885 1.114220 
## 
## Means with the same letter are not significantly different.
## 
##                  T_Hoja groups
## 50 + AS 1000ppm 20.2650      a
## 50 + AS 600ppm  19.3400      a
## 50 - AS         19.3125      a
## Control         19.1825      a
A.TH.M1.DT
## $statistics
##     MSerror Df   Mean       CV
##   0.4525875 12 19.525 3.445563
## 
## $parameters
##     test      name.t ntr alpha
##   Duncan Tratamiento   4  0.05
## 
## $duncan
##      Table CriticalRange
## 2 3.081307      1.036469
## 3 3.225244      1.084885
## 4 3.312453      1.114220
## 
## $means
##                  T_Hoja       std r        se   Min   Max     Q25    Q50    Q75
## 50 - AS         19.3125 0.7474122 4 0.3363731 18.41 20.24 19.0625 19.300 19.550
## 50 + AS 1000ppm 20.2650 0.7558439 4 0.3363731 19.34 21.06 19.8350 20.330 20.760
## 50 + AS 600ppm  19.3400 0.4298837 4 0.3363731 18.78 19.80 19.1550 19.390 19.575
## Control         19.1825 0.7040064 4 0.3363731 18.28 20.00 18.9775 19.225 19.430
## 
## $comparison
## NULL
## 
## $groups
##                  T_Hoja groups
## 50 + AS 1000ppm 20.2650      a
## 50 + AS 600ppm  19.3400      a
## 50 - AS         19.3125      a
## Control         19.1825      a
## 
## attr(,"class")
## [1] "group"

Análisis estadístico - Muestreo 2

# Datos - Temperatura de la hoja - Muestreo 2

datos.TH.M2 <- data.frame(Var_M2$`Factor riego`, Var_M2$`Factor ácido ascórbico`, Var_M2$Tratamiento, Var_M2$`Temperatura Hoja (°C)`)
colnames(datos.TH.M2) <- c("F_riego", "F_AA", "Tratamiento", "T_Hoja")
datos.TH.M2
datos.TH.M2$F_riego <- as.factor(datos.TH.M2$F_riego)
datos.TH.M2$F_AA <- as.factor(datos.TH.M2$F_AA)
str(datos.TH.M2)
## 'data.frame':    16 obs. of  4 variables:
##  $ F_riego    : Factor w/ 2 levels "0.5","1": 2 2 2 2 1 1 1 1 1 1 ...
##  $ F_AA       : Factor w/ 3 levels "0 ppm","1000 ppm",..: 1 1 1 1 1 1 1 1 3 3 ...
##  $ Tratamiento: chr  "Control" "Control" "Control" "Control" ...
##  $ T_Hoja     : num  19.2 17.2 19.1 20 15.8 ...
# Anova - Temperatura de la hoja - Muestreo 2
A.TH.M2 <- aov(T_Hoja ~ F_riego*F_AA, data = datos.TH.M2)
summary(A.TH.M2)
##             Df Sum Sq Mean Sq F value  Pr(>F)   
## F_riego      1  39.49   39.49  14.158 0.00271 **
## F_AA         2   2.73    1.36   0.489 0.62493   
## Residuals   12  33.47    2.79                   
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
  • El riego, como factor independiente, tiene diferencias signfiicativas, por lo que los resultados de la variables respuesta es estadísticamente atribuible a los tipos de riego. Por parte de la concentración de ácido ascórbico, no hay diferencias significativas, por lo que este aun no representa alguna alteración en la variable respuesta.
A.TH.M2.I <- aov(T_Hoja ~ F_riego:F_AA, data = datos.TH.M2)
summary(A.TH.M2.I)
##              Df Sum Sq Mean Sq F value Pr(>F)  
## F_riego:F_AA  3  42.22  14.074   5.046 0.0173 *
## Residuals    12  33.47   2.789                 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
  • Adicionalmente, hay una interacción del 95% de significancia entre los dos factores, lo que significa que hay una combinación de riego y ácido ascórbico representativa para el muestreo 2.
# Prueba de normalidad de residuos
shapiro.test(A.TH.M2$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  A.TH.M2$residuals
## W = 0.91517, p-value = 0.141
  • El hecho de que no sea significativo (p-value > 0.05), representa que los datos tienen una organización normal.
TukeyHSD(A.TH.M2.I)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = T_Hoja ~ F_riego:F_AA, data = datos.TH.M2)
## 
## $`F_riego:F_AA`
##                            diff        lwr         upr     p adj
## 1:0 ppm-0.5:0 ppm         3.855 -0.1118403  7.82184028 0.0585697
## 0.5:1000 ppm-0.5:0 ppm    0.890 -3.0768403  4.85684028 0.9704300
## 1:1000 ppm-0.5:0 ppm         NA         NA          NA        NA
## 0.5:600 ppm-0.5:0 ppm    -0.210 -4.1768403  3.75684028 0.9999678
## 1:600 ppm-0.5:0 ppm          NA         NA          NA        NA
## 0.5:1000 ppm-1:0 ppm     -2.965 -6.9318403  1.00184028 0.1953487
## 1:1000 ppm-1:0 ppm           NA         NA          NA        NA
## 0.5:600 ppm-1:0 ppm      -4.065 -8.0318403 -0.09815972 0.0434919
## 1:600 ppm-1:0 ppm            NA         NA          NA        NA
## 1:1000 ppm-0.5:1000 ppm      NA         NA          NA        NA
## 0.5:600 ppm-0.5:1000 ppm -1.100 -5.0668403  2.86684028 0.9305751
## 1:600 ppm-0.5:1000 ppm       NA         NA          NA        NA
## 0.5:600 ppm-1:1000 ppm       NA         NA          NA        NA
## 1:600 ppm-1:1000 ppm         NA         NA          NA        NA
## 1:600 ppm-0.5:600 ppm        NA         NA          NA        NA
  • El tratamiento azul (50% de riego y 600 ppm de ácido ascórbico) tiene diferencia signifcativa con el control para el muestreo 2. Adicionalmente, otra relacón que casi representa una diferencia estadística fue entre el tratamiento amarillo (50% de riego y 0 ppm de ácido ascórbico) y el control, sin embargo, a nivel agronómico, si lo podriamos tener en cuenta.
# Anova - Temperatura de la hoja - Muestreo 2 - Comparación entre los tratamientos

A.TH.M2.CT <- aov(T_Hoja ~ Tratamiento, data=datos.TH.M2)
summary(A.TH.M2.CT)
##             Df Sum Sq Mean Sq F value Pr(>F)  
## Tratamiento  3  42.22  14.074   5.046 0.0173 *
## Residuals   12  33.47   2.789                 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Tukey_A.TH.M2.CT <- TukeyHSD(A.TH.M2.CT)
Tukey_A.TH.M2.CT
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = T_Hoja ~ Tratamiento, data = datos.TH.M2)
## 
## $Tratamiento
##                                  diff        lwr      upr     p adj
## 50 + AS 1000ppm-50 - AS         0.890 -2.6162322 4.396232 0.8734229
## 50 + AS 600ppm-50 - AS         -0.210 -3.7162322 3.296232 0.9978888
## Control-50 - AS                 3.855  0.3487678 7.361232 0.0299176
## 50 + AS 600ppm-50 + AS 1000ppm -1.100 -4.6062322 2.406232 0.7889541
## Control-50 + AS 1000ppm         2.965 -0.5412322 6.471232 0.1085383
## Control-50 + AS 600ppm          4.065  0.5587678 7.571232 0.0219123
  • En este caso, podemos sustentar lo mencionado anteriormente, debido a que los tratamientos “50 - AS” y “50 + AS 600ppm” tienen diferencias significativas con el control en el muestreo 2.
A.TH.M2.DT <- duncan.test(A.TH.M2.CT, 'Tratamiento', console = T)
## 
## Study: A.TH.M2.CT ~ "Tratamiento"
## 
## Duncan's new multiple range test
## for T_Hoja 
## 
## Mean Square Error:  2.789458 
## 
## Tratamiento,  means
## 
##                 T_Hoja      std r        se   Min   Max    Q25    Q50    Q75
## 50 - AS         14.995 1.317915 4 0.8350836 13.06 15.86 14.710 15.530 15.815
## 50 + AS 1000ppm 15.885 1.773838 4 0.8350836 13.62 17.90 15.165 16.010 16.730
## 50 + AS 600ppm  14.785 2.206740 4 0.8350836 11.66 16.40 14.015 15.540 16.310
## Control         18.850 1.185214 4 0.8350836 17.19 20.00 18.585 19.105 19.370
## 
## Alpha: 0.05 ; DF Error: 12 
## 
## Critical Range
##        2        3        4 
## 2.573149 2.693348 2.766175 
## 
## Means with the same letter are not significantly different.
## 
##                 T_Hoja groups
## Control         18.850      a
## 50 + AS 1000ppm 15.885      b
## 50 - AS         14.995      b
## 50 + AS 600ppm  14.785      b
A.TH.M2.DT
## $statistics
##    MSerror Df     Mean       CV
##   2.789458 12 16.12875 10.35522
## 
## $parameters
##     test      name.t ntr alpha
##   Duncan Tratamiento   4  0.05
## 
## $duncan
##      Table CriticalRange
## 2 3.081307      2.573149
## 3 3.225244      2.693348
## 4 3.312453      2.766175
## 
## $means
##                 T_Hoja      std r        se   Min   Max    Q25    Q50    Q75
## 50 - AS         14.995 1.317915 4 0.8350836 13.06 15.86 14.710 15.530 15.815
## 50 + AS 1000ppm 15.885 1.773838 4 0.8350836 13.62 17.90 15.165 16.010 16.730
## 50 + AS 600ppm  14.785 2.206740 4 0.8350836 11.66 16.40 14.015 15.540 16.310
## Control         18.850 1.185214 4 0.8350836 17.19 20.00 18.585 19.105 19.370
## 
## $comparison
## NULL
## 
## $groups
##                 T_Hoja groups
## Control         18.850      a
## 50 + AS 1000ppm 15.885      b
## 50 - AS         14.995      b
## 50 + AS 600ppm  14.785      b
## 
## attr(,"class")
## [1] "group"

Análisis estadístico - Muestreo 3

# Datos - Temperatura de la hoja - Muestreo 3

datos.TH.M3 <- data.frame(Var_M3$`Factor riego`, Var_M3$`Factor ácido ascórbico`, Var_M3$Tratamiento, Var_M3$`Temperatura Hoja (°C)`)
colnames(datos.TH.M3) <- c("F_riego", "F_AA", "Tratamiento", "T_Hoja")
datos.TH.M3
datos.TH.M3$F_riego <- as.factor(datos.TH.M3$F_riego)
datos.TH.M3$F_AA <- as.factor(datos.TH.M3$F_AA)
str(datos.TH.M3)
## 'data.frame':    16 obs. of  4 variables:
##  $ F_riego    : Factor w/ 2 levels "0.5","1": 2 2 2 2 1 1 1 1 1 1 ...
##  $ F_AA       : Factor w/ 3 levels "0 ppm","1000 ppm",..: 1 1 1 1 1 1 1 1 3 3 ...
##  $ Tratamiento: chr  "Control" "Control" "Control" "Control" ...
##  $ T_Hoja     : num  16.8 18.9 18.9 14 23 ...
# Anova - Temperatura de la hoja - Muestreo 3
A.TH.M3 <- aov(T_Hoja ~ F_riego*F_AA, data = datos.TH.M3)
summary(A.TH.M3)
##             Df Sum Sq Mean Sq F value   Pr(>F)    
## F_riego      1  52.96   52.96  20.221 0.000731 ***
## F_AA         2   5.46    2.73   1.041 0.382767    
## Residuals   12  31.43    2.62                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
  • El riego, como factor independiente, tiene diferencias signfiicativas, por lo que los resultados de la variable respuesta es estadísticamente atribuible a los tipos de riego. Por parte de la concentración de ácido ascórbico, no hay diferencias significativas, por lo que este aun no representa alguna alteración en la variable respuesta.
A.TH.M3.I <- aov(T_Hoja ~ F_riego:F_AA, data = datos.TH.M3)
summary(A.TH.M3.I)
##              Df Sum Sq Mean Sq F value  Pr(>F)   
## F_riego:F_AA  3  58.42  19.473   7.435 0.00449 **
## Residuals    12  31.43   2.619                   
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
  • Adicionalmente, hay una interacción del 99% de significancia entre los dos factores, lo que significa que hay una combinación de riego y ácido ascórbico representativa para el muestreo 3.
# Prueba de normalidad de residuos
shapiro.test(A.TH.M3$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  A.TH.M3$residuals
## W = 0.94288, p-value = 0.3858
  • El hecho de que no sea significativo (p-value > 0.05), representa que los datos tienen una organización normal.
TukeyHSD(A.TH.M3.I)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = T_Hoja ~ F_riego:F_AA, data = datos.TH.M3)
## 
## $`F_riego:F_AA`
##                             diff        lwr       upr     p adj
## 1:0 ppm-0.5:0 ppm        -5.1550 -8.9988645 -1.311136 0.0072805
## 0.5:1000 ppm-0.5:0 ppm   -1.4125 -5.2563645  2.431364 0.8126219
## 1:1000 ppm-0.5:0 ppm          NA         NA        NA        NA
## 0.5:600 ppm-0.5:0 ppm    -1.4475 -5.2913645  2.396364 0.7976436
## 1:600 ppm-0.5:0 ppm           NA         NA        NA        NA
## 0.5:1000 ppm-1:0 ppm      3.7425 -0.1013645  7.586364 0.0579750
## 1:1000 ppm-1:0 ppm            NA         NA        NA        NA
## 0.5:600 ppm-1:0 ppm       3.7075 -0.1363645  7.551364 0.0610036
## 1:600 ppm-1:0 ppm             NA         NA        NA        NA
## 1:1000 ppm-0.5:1000 ppm       NA         NA        NA        NA
## 0.5:600 ppm-0.5:1000 ppm -0.0350 -3.8788645  3.808864 1.0000000
## 1:600 ppm-0.5:1000 ppm        NA         NA        NA        NA
## 0.5:600 ppm-1:1000 ppm        NA         NA        NA        NA
## 1:600 ppm-1:1000 ppm          NA         NA        NA        NA
## 1:600 ppm-0.5:600 ppm         NA         NA        NA        NA
  • El tratamiento amarillo (50% y 0ppm de ácido ascórbico) tiene diferencia signifcativa con el control para el muestreo 3, esto es lo que se esperaría puesto a que la deficiencia de agua en la planta causa el cierre de los estomas, por lo que no hay regulación de temperatura y por ende, debe ser alta en aquel tratamiento donde no se aplique ácido ascórbico. Adicionalmente, otras relaciones que casi representan una diferencia estadísticamente significativa fue entre el tratamiento verde (50% y 1000ppm de ácido ascórbico) y el azul (50% de riego y 600 ppm de ácido ascórbico) con el control, no estuvieron por debajo del 5%, sin embargo, a nivel agronómico, si los podriamos tener en cuenta, ya que es lógico pensar que por el ácido ascórbico, estos tratamientos lograron tener una temperatura cercana a las plantas que no se encuentran estresadas.
# Anova - Temperatura de la hoja - Muestreo 3 - Comparación entre los tratamientos

A.TH.M3.CT <- aov(T_Hoja ~ Tratamiento, data=datos.TH.M3)
summary(A.TH.M3.CT)
##             Df Sum Sq Mean Sq F value  Pr(>F)   
## Tratamiento  3  58.42  19.473   7.435 0.00449 **
## Residuals   12  31.43   2.619                   
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Tukey_A.TH.M3.CT <- TukeyHSD(A.TH.M3.CT)
Tukey_A.TH.M3.CT
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = T_Hoja ~ Tratamiento, data = datos.TH.M3)
## 
## $Tratamiento
##                                   diff       lwr        upr     p adj
## 50 + AS 1000ppm-50 - AS        -1.4125 -4.810036  1.9850357 0.6183228
## 50 + AS 600ppm-50 - AS         -1.4475 -4.845036  1.9500357 0.6004793
## Control-50 - AS                -5.1550 -8.552536 -1.7574643 0.0034728
## 50 + AS 600ppm-50 + AS 1000ppm -0.0350 -3.432536  3.3625357 0.9999891
## Control-50 + AS 1000ppm        -3.7425 -7.140036 -0.3449643 0.0295990
## Control-50 + AS 600ppm         -3.7075 -7.105036 -0.3099643 0.0312245
  • En este caso, podemos comprobar lo anterioremente mencionado. Aquí los tres tratamientos tienen diferencias significativas con respecto a su control.
A.TH.M3.DT <- duncan.test(A.TH.M3.CT, 'Tratamiento', console = T)
## 
## Study: A.TH.M3.CT ~ "Tratamiento"
## 
## Duncan's new multiple range test
## for T_Hoja 
## 
## Mean Square Error:  2.619187 
## 
## Tratamiento,  means
## 
##                  T_Hoja      std r        se   Min   Max    Q25    Q50     Q75
## 50 - AS         22.2925 1.139163 4 0.8091952 20.62 23.02 22.045 22.765 23.0125
## 50 + AS 1000ppm 20.8800 1.325343 4 0.8091952 19.70 22.72 20.060 20.550 21.3700
## 50 + AS 600ppm  20.8450 1.477419 4 0.8091952 18.74 22.20 20.600 21.220 21.4650
## Control         17.1375 2.289052 4 0.8091952 14.02 18.86 16.120 17.835 18.8525
## 
## Alpha: 0.05 ; DF Error: 12 
## 
## Critical Range
##        2        3        4 
## 2.493379 2.609852 2.680421 
## 
## Means with the same letter are not significantly different.
## 
##                  T_Hoja groups
## 50 - AS         22.2925      a
## 50 + AS 1000ppm 20.8800      a
## 50 + AS 600ppm  20.8450      a
## Control         17.1375      b
A.TH.M3.DT
## $statistics
##    MSerror Df     Mean       CV
##   2.619187 12 20.28875 7.976787
## 
## $parameters
##     test      name.t ntr alpha
##   Duncan Tratamiento   4  0.05
## 
## $duncan
##      Table CriticalRange
## 2 3.081307      2.493379
## 3 3.225244      2.609852
## 4 3.312453      2.680421
## 
## $means
##                  T_Hoja      std r        se   Min   Max    Q25    Q50     Q75
## 50 - AS         22.2925 1.139163 4 0.8091952 20.62 23.02 22.045 22.765 23.0125
## 50 + AS 1000ppm 20.8800 1.325343 4 0.8091952 19.70 22.72 20.060 20.550 21.3700
## 50 + AS 600ppm  20.8450 1.477419 4 0.8091952 18.74 22.20 20.600 21.220 21.4650
## Control         17.1375 2.289052 4 0.8091952 14.02 18.86 16.120 17.835 18.8525
## 
## $comparison
## NULL
## 
## $groups
##                  T_Hoja groups
## 50 - AS         22.2925      a
## 50 + AS 1000ppm 20.8800      a
## 50 + AS 600ppm  20.8450      a
## Control         17.1375      b
## 
## attr(,"class")
## [1] "group"

Análisis estadístico - Muestreo 4

# Datos - Temperatura de la hoja - Muestreo 4

datos.TH.M4 <- data.frame(Var_M4$`Factor riego`, Var_M4$`Factor ácido ascórbico`, Var_M4$Tratamiento, Var_M4$`Temperatura Hoja (°C)`)
colnames(datos.TH.M4) <- c("F_riego", "F_AA", "Tratamiento", "T_Hoja")
datos.TH.M4
datos.TH.M4$F_riego <- as.factor(datos.TH.M4$F_riego)
datos.TH.M4$F_AA <- as.factor(datos.TH.M4$F_AA)
str(datos.TH.M4)
## 'data.frame':    16 obs. of  4 variables:
##  $ F_riego    : Factor w/ 2 levels "0.5","1": 2 2 2 2 1 1 1 1 1 1 ...
##  $ F_AA       : Factor w/ 3 levels "0 ppm","1000 ppm",..: 1 1 1 1 1 1 1 1 3 3 ...
##  $ Tratamiento: chr  "Control" "Control" "Control" "Control" ...
##  $ T_Hoja     : num  25.2 22.7 21.2 31.5 27.2 ...
# Anova - Temperatura de la hoja - Muestreo 4
A.TH.M4 <- aov(T_Hoja ~ F_riego*F_AA, data = datos.TH.M4)
summary(A.TH.M4)
##             Df Sum Sq Mean Sq F value Pr(>F)  
## F_riego      1   0.65    0.65   0.075 0.7884  
## F_AA         2  64.18   32.09   3.741 0.0546 .
## Residuals   12 102.94    8.58                 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
  • La concentración de ácido ascórbico (AA), como factor independiente, tiene diferencias signfiicativas, por lo que los resultados de la variable respuesta es estadísticamente atribuible a los tipos de concentración de AA. Por parte, el tipo de riego, esta vez no tuvo diferencias significativas, por lo que este no representó alguna alteración en la variable respuesta para el último muestreo.
A.TH.M4.I <- aov(T_Hoja ~ F_riego:F_AA, data = datos.TH.M4)
summary(A.TH.M4.I)
##              Df Sum Sq Mean Sq F value Pr(>F)
## F_riego:F_AA  3  64.83  21.609   2.519  0.107
## Residuals    12 102.94   8.579
  • Adicionalmente, hay una interacción del 99% de significancia entre los dos factores, lo que significa que hay una combinación de riego y ácido ascórbico representativa para el muestreo 4.
# Prueba de normalidad de residuos
shapiro.test(A.TH.M4$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  A.TH.M4$residuals
## W = 0.89968, p-value = 0.07943
  • El hecho de que no sea significativo (p-value > 0.05), representa que los datos tienen una distribución normal.
TukeyHSD(A.TH.M4.I)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = T_Hoja ~ F_riego:F_AA, data = datos.TH.M4)
## 
## $`F_riego:F_AA`
##                             diff        lwr      upr     p adj
## 1:0 ppm-0.5:0 ppm        -3.5000 -10.456501 3.456501 0.5618657
## 0.5:1000 ppm-0.5:0 ppm   -5.6075 -12.564001 1.349001 0.1444941
## 1:1000 ppm-0.5:0 ppm          NA         NA       NA        NA
## 0.5:600 ppm-0.5:0 ppm    -3.5000 -10.456501 3.456501 0.5618657
## 1:600 ppm-0.5:0 ppm           NA         NA       NA        NA
## 0.5:1000 ppm-1:0 ppm     -2.1075  -9.064001 4.849001 0.9032596
## 1:1000 ppm-1:0 ppm            NA         NA       NA        NA
## 0.5:600 ppm-1:0 ppm       0.0000  -6.956501 6.956501 1.0000000
## 1:600 ppm-1:0 ppm             NA         NA       NA        NA
## 1:1000 ppm-0.5:1000 ppm       NA         NA       NA        NA
## 0.5:600 ppm-0.5:1000 ppm  2.1075  -4.849001 9.064001 0.9032596
## 1:600 ppm-0.5:1000 ppm        NA         NA       NA        NA
## 0.5:600 ppm-1:1000 ppm        NA         NA       NA        NA
## 1:600 ppm-1:1000 ppm          NA         NA       NA        NA
## 1:600 ppm-0.5:600 ppm         NA         NA       NA        NA
# Anova - Temperatura de la hoja - Muestreo 4 - Comparación entre los tratamientos

A.TH.M4.CT <- aov(T_Hoja ~ Tratamiento, data=datos.TH.M4)
summary(A.TH.M4.CT)
##             Df Sum Sq Mean Sq F value Pr(>F)
## Tratamiento  3  64.83  21.609   2.519  0.107
## Residuals   12 102.94   8.579
Tukey_A.TH.M4.CT <- TukeyHSD(A.TH.M4.CT)
Tukey_A.TH.M4.CT
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = T_Hoja ~ Tratamiento, data = datos.TH.M4)
## 
## $Tratamiento
##                                   diff        lwr       upr     p adj
## 50 + AS 1000ppm-50 - AS        -5.6075 -11.756249 0.5412493 0.0781497
## 50 + AS 600ppm-50 - AS         -3.5000  -9.648749 2.6487493 0.3700332
## Control-50 - AS                -3.5000  -9.648749 2.6487493 0.3700332
## 50 + AS 600ppm-50 + AS 1000ppm  2.1075  -4.041249 8.2562493 0.7426440
## Control-50 + AS 1000ppm         2.1075  -4.041249 8.2562493 0.7426440
## Control-50 + AS 600ppm          0.0000  -6.148749 6.1487493 1.0000000
  • En este caso, podemos observar que los tratamientos no tuvieron diferencias significativas con el control, sin embargo, esto es lo que podemos concluir a nivel estadístico, a nivel agronómico es posible afirmar que hubo una diferencia entre el tratamiento verde (50 + AS 1000ppm) y el control, pues fue el tratamiento que menos temperatura presentó, incluso por debajo del control. De igual manera, el tratamiento azul (50 + AS 600ppm), aunque lejos de tener diferencias significativas con el control, si se puede notar un valor de temperatura media inferior al del control.
A.TH.M4.DT <- duncan.test(A.TH.M4.CT, 'Tratamiento', console = T)
## 
## Study: A.TH.M4.CT ~ "Tratamiento"
## 
## Duncan's new multiple range test
## for T_Hoja 
## 
## Mean Square Error:  8.578515 
## 
## Tratamiento,  means
## 
##                  T_Hoja       std r       se   Min   Max    Q25   Q50     Q75
## 50 - AS         28.6450 2.6547253 4 1.464455 26.68 32.52 27.085 27.69 29.2500
## 50 + AS 1000ppm 23.0375 0.8162669 4 1.464455 22.28 24.09 22.460 22.89 23.4675
## 50 + AS 600ppm  25.1450 2.3942918 4 1.464455 23.38 28.68 23.965 24.26 25.4400
## Control         25.1450 4.5681032 4 1.464455 21.16 31.52 22.300 23.95 26.7950
## 
## Alpha: 0.05 ; DF Error: 12 
## 
## Critical Range
##        2        3        4 
## 4.512435 4.723224 4.850939 
## 
## Means with the same letter are not significantly different.
## 
##                  T_Hoja groups
## 50 - AS         28.6450      a
## 50 + AS 600ppm  25.1450     ab
## Control         25.1450     ab
## 50 + AS 1000ppm 23.0375      b
A.TH.M4.DT
## $statistics
##    MSerror Df     Mean       CV
##   8.578515 12 25.49312 11.48902
## 
## $parameters
##     test      name.t ntr alpha
##   Duncan Tratamiento   4  0.05
## 
## $duncan
##      Table CriticalRange
## 2 3.081307      4.512435
## 3 3.225244      4.723224
## 4 3.312453      4.850939
## 
## $means
##                  T_Hoja       std r       se   Min   Max    Q25   Q50     Q75
## 50 - AS         28.6450 2.6547253 4 1.464455 26.68 32.52 27.085 27.69 29.2500
## 50 + AS 1000ppm 23.0375 0.8162669 4 1.464455 22.28 24.09 22.460 22.89 23.4675
## 50 + AS 600ppm  25.1450 2.3942918 4 1.464455 23.38 28.68 23.965 24.26 25.4400
## Control         25.1450 4.5681032 4 1.464455 21.16 31.52 22.300 23.95 26.7950
## 
## $comparison
## NULL
## 
## $groups
##                  T_Hoja groups
## 50 - AS         28.6450      a
## 50 + AS 600ppm  25.1450     ab
## Control         25.1450     ab
## 50 + AS 1000ppm 23.0375      b
## 
## attr(,"class")
## [1] "group"

Análisis descriptivo - Temperatura de la hoja

Tratamientos <- c(
  rep("Control", 4),
  rep("50 - AS", 4),
  rep("50 + AS 600ppm", 4),
  rep("50 + AS 1000ppm", 4)
)

# Datos - Gráfico - Temperatura de la hoja

Datos.G.TH <- data.frame(factor(Tratamientos, ordered = TRUE, levels = c("Control", "50 - AS", "50 + AS 600ppm", "50 + AS 1000ppm")), Var_M1$`Temperatura Hoja (°C)`, Var_M2$`Temperatura Hoja (°C)`, Var_M3$`Temperatura Hoja (°C)`, Var_M4$`Temperatura Hoja (°C)` )
colnames(Datos.G.TH) <- c("Tratamientos", "31", "38","45", "52")
Datos.G.TH
# Unificar la variable respuesta en una sola columna
df.long.TH = gather(Datos.G.TH, dds, Valor_de_temperatura, 2:5)
df.long.TH
# Diferencias significativas con el control
          #M1  #M2 #M3  #M4 
DS.TH <- c("a", "a", "b", "ab",    #T1
           "a", "b*", "a*", "a",  #T2
           "a", "b*", "a*", "ab",  #T3
           "a", "b", "a*", "b*")  #T4

# Media y desviación estandar de la media de los tratamientos en los diferentes muestreos.
df.sumzd.TH = group_by(df.long.TH, Tratamientos, dds, ) %>% summarise(mean = mean(Valor_de_temperatura), sd = sd(Valor_de_temperatura))
## `summarise()` has grouped output by 'Tratamientos'. You can override using the
## `.groups` argument.
# Con diferencias significativas de los tratamientos con su control
df.sumzd.TH.ds <- data.frame(df.sumzd.TH, DS.TH)
df.sumzd.TH.ds
G.TH = ggplot(df.sumzd.TH, aes(x=dds, y=mean, fill=Tratamientos))+
  geom_bar(stat = "identity", position = "dodge", color = "black", alpha = 0.5)+
  geom_errorbar(aes(ymin=mean-sd, ymax=mean+sd), width = 0.25, size=0.5, position = position_dodge(0.9), alpha = 0.5)+
  scale_fill_manual(values=c("red", "yellow", "blue", "green")) +
  theme_minimal()+
  ggtitle("Temperatura promedio de las hojas \nen los diferentes muestreos") + theme(plot.title = element_text(family = "Times New Roman",
size = rel(1.5),
vjust = 0.5, 
hjust = 0.5))+
  labs(x = "Días después de siembra", y = "°C")+
  theme(axis.title.x = element_text(family = "Times New Roman"), axis.title.y = element_text(family = "Times New Roman"))+
  theme(legend.title = element_text(family = "Times New Roman"))+
  geom_text(aes(x=dds, y= mean+6, label=DS.TH),
            position = position_dodge(width = 1), size = 5)
## Warning: Using `size` aesthetic for lines was deprecated in ggplot2 3.4.0.
## ℹ Please use `linewidth` instead.
## This warning is displayed once every 8 hours.
## Call `lifecycle::last_lifecycle_warnings()` to see where this warning was
## generated.
G.TH

Contenido relativo de clorofilas

Análisis estadístico - Muestreo 1

# Datos - Contenido de clorofilas - Muestreo 1

datos.CC.M1 <- data.frame(Var_M1$`Factor riego`, Var_M1$`Factor ácido ascórbico`, Var_M1$Tratamiento, Var_M1$SPAD)
colnames(datos.CC.M1) <- c("F_riego", "F_AA", "Tratamiento", "SPAD")
datos.CC.M1
datos.CC.M1$F_riego <- as.factor(datos.CC.M1$F_riego)
datos.CC.M1$F_AA <- as.factor(datos.CC.M1$F_AA)
str(datos.CC.M1)
## 'data.frame':    16 obs. of  4 variables:
##  $ F_riego    : Factor w/ 2 levels "0.5","1": 2 2 2 2 1 1 1 1 1 1 ...
##  $ F_AA       : Factor w/ 3 levels "0 ppm","1000 ppm",..: 1 1 1 1 1 1 1 1 3 3 ...
##  $ Tratamiento: chr  "Control" "Control" "Control" "Control" ...
##  $ SPAD       : num  44.2 42.3 31.2 38 37.7 44 45.1 45.4 47 43.8 ...
# Anova - Contenido de clorofilas - Muestreo 1
A.CC.M1 <- aov(SPAD ~ F_riego*F_AA, data = datos.CC.M1)
summary(A.CC.M1)
##             Df Sum Sq Mean Sq F value Pr(>F)  
## F_riego      1  80.08   80.08   4.766 0.0496 *
## F_AA         2   8.22    4.11   0.245 0.7868  
## Residuals   12 201.63   16.80                 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
  • Los dos tipos de riego, como factor independiente, tuvo diferencias con una significancia del 95%.
# Prueba de normalidad de residuos
shapiro.test(A.CC.M1$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  A.CC.M1$residuals
## W = 0.98176, p-value = 0.976
  • El hecho de que no sea significativo (p-value > 0.05), representa que los datos tienen una distribución normal.
TukeyHSD(A.CC.M1)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = SPAD ~ F_riego * F_AA, data = datos.CC.M1)
## 
## $F_riego
##            diff       lwr         upr     p adj
## 1-0.5 -5.166667 -10.32313 -0.01020694 0.0496153
## 
## $F_AA
##                       diff       lwr      upr     p adj
## 1000 ppm-0 ppm   0.5791667 -6.117699 7.276033 0.9711501
## 600 ppm-0 ppm    1.5041667 -5.192699 8.201033 0.8231596
## 600 ppm-1000 ppm 0.9250000 -6.807875 8.657875 0.9456585
  • Los dos riegos presentan diferencias significativas.
# Anova - Contenido de clorofilas - Muestreo 1 - Comparación entre los tratamientos

A.CC.M1.CT <- aov(SPAD ~ Tratamiento, data=datos.CC.M1)
summary(A.CC.M1.CT)
##             Df Sum Sq Mean Sq F value Pr(>F)
## Tratamiento  3  88.31   29.43   1.752   0.21
## Residuals   12 201.63   16.80
Tukey_A.CC.M1.CT <- TukeyHSD(A.CC.M1.CT)
Tukey_A.CC.M1.CT
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = SPAD ~ Tratamiento, data = datos.CC.M1)
## 
## $Tratamiento
##                                  diff       lwr      upr     p adj
## 50 + AS 1000ppm-50 - AS         1.100  -7.50544  9.70544 0.9805139
## 50 + AS 600ppm-50 - AS          2.025  -6.58044 10.63044 0.8956467
## Control-50 - AS                -4.125 -12.73044  4.48044 0.5095905
## 50 + AS 600ppm-50 + AS 1000ppm  0.925  -7.68044  9.53044 0.9881866
## Control-50 + AS 1000ppm        -5.225 -13.83044  3.38044 0.3186913
## Control-50 + AS 600ppm         -6.150 -14.75544  2.45544 0.2011276
  • Podemos observar que ninguno de los tratamientos tiene diferencias significativas con el control para el muestreo 1.
A.CC.M1.DT <- duncan.test(A.CC.M1.CT, 'Tratamiento', console = T)
## 
## Study: A.CC.M1.CT ~ "Tratamiento"
## 
## Duncan's new multiple range test
## for SPAD 
## 
## Mean Square Error:  16.80292 
## 
## Tratamiento,  means
## 
##                   SPAD      std r       se  Min  Max    Q25   Q50    Q75
## 50 - AS         43.050 3.617089 4 2.049568 37.7 45.4 42.425 44.55 45.175
## 50 + AS 1000ppm 44.150 4.362339 4 2.049568 41.1 50.6 41.775 42.45 44.825
## 50 + AS 600ppm  45.075 1.359841 4 2.049568 43.8 47.0 44.475 44.75 45.350
## Control         38.925 5.766209 4 2.049568 31.2 44.2 36.300 40.15 42.775
## 
## Alpha: 0.05 ; DF Error: 12 
## 
## Critical Range
##        2        3        4 
## 6.315348 6.610356 6.789098 
## 
## Means with the same letter are not significantly different.
## 
##                   SPAD groups
## 50 + AS 600ppm  45.075      a
## 50 + AS 1000ppm 44.150      a
## 50 - AS         43.050      a
## Control         38.925      a
A.CC.M1.DT
## $statistics
##    MSerror Df Mean       CV
##   16.80292 12 42.8 9.577421
## 
## $parameters
##     test      name.t ntr alpha
##   Duncan Tratamiento   4  0.05
## 
## $duncan
##      Table CriticalRange
## 2 3.081307      6.315348
## 3 3.225244      6.610356
## 4 3.312453      6.789098
## 
## $means
##                   SPAD      std r       se  Min  Max    Q25   Q50    Q75
## 50 - AS         43.050 3.617089 4 2.049568 37.7 45.4 42.425 44.55 45.175
## 50 + AS 1000ppm 44.150 4.362339 4 2.049568 41.1 50.6 41.775 42.45 44.825
## 50 + AS 600ppm  45.075 1.359841 4 2.049568 43.8 47.0 44.475 44.75 45.350
## Control         38.925 5.766209 4 2.049568 31.2 44.2 36.300 40.15 42.775
## 
## $comparison
## NULL
## 
## $groups
##                   SPAD groups
## 50 + AS 600ppm  45.075      a
## 50 + AS 1000ppm 44.150      a
## 50 - AS         43.050      a
## Control         38.925      a
## 
## attr(,"class")
## [1] "group"

Análisis estadístico - Muestreo 2

# Datos - Contenido de clorofilas - Muestreo 2

datos.CC.M2 <- data.frame(Var_M2$`Factor riego`, Var_M2$`Factor ácido ascórbico`, Var_M2$Tratamiento, Var_M2$SPAD)
colnames(datos.CC.M2) <- c("F_riego", "F_AA", "Tratamiento", "SPAD")
datos.CC.M2
datos.CC.M2$F_riego <- as.factor(datos.CC.M2$F_riego)
datos.CC.M2$F_AA <- as.factor(datos.CC.M2$F_AA)
str(datos.CC.M2)
## 'data.frame':    16 obs. of  4 variables:
##  $ F_riego    : Factor w/ 2 levels "0.5","1": 2 2 2 2 1 1 1 1 1 1 ...
##  $ F_AA       : Factor w/ 3 levels "0 ppm","1000 ppm",..: 1 1 1 1 1 1 1 1 3 3 ...
##  $ Tratamiento: chr  "Control" "Control" "Control" "Control" ...
##  $ SPAD       : num  45.2 45.2 44.2 43.3 49.8 47.9 46.2 39.4 42 45.5 ...
# Anova - Contenido de clorofilas - Muestreo 2
A.CC.M2 <- aov(SPAD ~ F_riego*F_AA, data = datos.CC.M2)
summary(A.CC.M2)
##             Df Sum Sq Mean Sq F value Pr(>F)
## F_riego      1   2.90   2.901   0.276  0.609
## F_AA         2   4.19   2.093   0.200  0.822
## Residuals   12 125.91  10.493
  • Ninguno de los factores tuvo diferencias significativas.
# Prueba de normalidad de residuos
shapiro.test(A.CC.M2$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  A.CC.M2$residuals
## W = 0.94754, p-value = 0.4518
  • El hecho de que no sea significativo (p-value > 0.05), representa que los datos tienen una distribución normal.
TukeyHSD(A.CC.M2)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = SPAD ~ F_riego * F_AA, data = datos.CC.M2)
## 
## $F_riego
##             diff       lwr      upr     p adj
## 1-0.5 -0.9833333 -5.058063 3.091396 0.6086059
## 
## $F_AA
##                        diff       lwr     upr     p adj
## 1000 ppm-0 ppm   -1.0166667 -6.308653 4.27532 0.8667365
## 600 ppm-0 ppm     0.2833333 -5.008653 5.57532 0.9888255
## 600 ppm-1000 ppm  1.3000000 -4.810660 7.41066 0.8395476
  • No se presentan diferencias significativas entre los factores.
# Anova - Contenido de clorofilas - Muestreo 2 - Comparación entre los tratamientos

A.CC.M2.CT <- aov(SPAD ~ Tratamiento, data=datos.CC.M2)
summary(A.CC.M2.CT)
##             Df Sum Sq Mean Sq F value Pr(>F)
## Tratamiento  3   7.09   2.362   0.225  0.877
## Residuals   12 125.91  10.492
Tukey_A.CC.M2.CT <- TukeyHSD(A.CC.M2.CT)
Tukey_A.CC.M2.CT
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = SPAD ~ Tratamiento, data = datos.CC.M2)
## 
## $Tratamiento
##                                 diff       lwr      upr     p adj
## 50 + AS 1000ppm-50 - AS        -1.20 -8.000177 5.600177 0.9516671
## 50 + AS 600ppm-50 - AS          0.10 -6.700177 6.900177 0.9999683
## Control-50 - AS                -1.35 -8.150177 5.450177 0.9333748
## 50 + AS 600ppm-50 + AS 1000ppm  1.30 -5.500177 8.100177 0.9398385
## Control-50 + AS 1000ppm        -0.15 -6.950177 6.650177 0.9998932
## Control-50 + AS 600ppm         -1.45 -8.250177 5.350177 0.9193587
  • Podemos observar que ninguno de los tratamientos tiene diferencias significativas con el control para el muestreo 2.
A.CC.M2.DT <- duncan.test(A.CC.M2.CT, 'Tratamiento', console = T)
## 
## Study: A.CC.M2.CT ~ "Tratamiento"
## 
## Duncan's new multiple range test
## for SPAD 
## 
## Mean Square Error:  10.4925 
## 
## Tratamiento,  means
## 
##                   SPAD       std r       se  Min  Max    Q25   Q50    Q75
## 50 - AS         45.825 4.5287047 4 1.619606 39.4 49.8 44.500 47.05 48.375
## 50 + AS 1000ppm 44.625 2.9044506 4 1.619606 41.5 48.5 43.300 44.25 45.575
## 50 + AS 600ppm  45.925 3.4912987 4 1.619606 42.0 50.5 44.625 45.60 46.900
## Control         44.475 0.9142392 4 1.619606 43.3 45.2 43.975 44.70 45.200
## 
## Alpha: 0.05 ; DF Error: 12 
## 
## Critical Range
##        2        3        4 
## 4.990504 5.223625 5.364870 
## 
## Means with the same letter are not significantly different.
## 
##                   SPAD groups
## 50 + AS 600ppm  45.925      a
## 50 - AS         45.825      a
## 50 + AS 1000ppm 44.625      a
## Control         44.475      a
A.CC.M2.DT
## $statistics
##   MSerror Df    Mean       CV
##   10.4925 12 45.2125 7.164419
## 
## $parameters
##     test      name.t ntr alpha
##   Duncan Tratamiento   4  0.05
## 
## $duncan
##      Table CriticalRange
## 2 3.081307      4.990504
## 3 3.225244      5.223625
## 4 3.312453      5.364870
## 
## $means
##                   SPAD       std r       se  Min  Max    Q25   Q50    Q75
## 50 - AS         45.825 4.5287047 4 1.619606 39.4 49.8 44.500 47.05 48.375
## 50 + AS 1000ppm 44.625 2.9044506 4 1.619606 41.5 48.5 43.300 44.25 45.575
## 50 + AS 600ppm  45.925 3.4912987 4 1.619606 42.0 50.5 44.625 45.60 46.900
## Control         44.475 0.9142392 4 1.619606 43.3 45.2 43.975 44.70 45.200
## 
## $comparison
## NULL
## 
## $groups
##                   SPAD groups
## 50 + AS 600ppm  45.925      a
## 50 - AS         45.825      a
## 50 + AS 1000ppm 44.625      a
## Control         44.475      a
## 
## attr(,"class")
## [1] "group"

Análisis estadístico - Muestreo 3

# Datos - Contenido de clorofilas - Muestreo 3

datos.CC.M3 <- data.frame(Var_M3$`Factor riego`, Var_M3$`Factor ácido ascórbico`, Var_M3$Tratamiento, Var_M3$SPAD)
colnames(datos.CC.M3) <- c("F_riego", "F_AA", "Tratamiento", "SPAD")
datos.CC.M3
datos.CC.M3$F_riego <- as.factor(datos.CC.M3$F_riego)
datos.CC.M3$F_AA <- as.factor(datos.CC.M3$F_AA)
str(datos.CC.M3)
## 'data.frame':    16 obs. of  4 variables:
##  $ F_riego    : Factor w/ 2 levels "0.5","1": 2 2 2 2 1 1 1 1 1 1 ...
##  $ F_AA       : Factor w/ 3 levels "0 ppm","1000 ppm",..: 1 1 1 1 1 1 1 1 3 3 ...
##  $ Tratamiento: chr  "Control" "Control" "Control" "Control" ...
##  $ SPAD       : num  47.8 45.4 39.8 38.6 50.6 43.7 48.9 55.5 46.3 48 ...
# Anova - Contenido de clorofilas - Muestreo 3
A.CC.M3 <- aov(SPAD ~ F_riego*F_AA, data = datos.CC.M3)
summary(A.CC.M3)
##             Df Sum Sq Mean Sq F value Pr(>F)  
## F_riego      1 108.90  108.90   6.885 0.0222 *
## F_AA         2  84.02   42.01   2.656 0.1109  
## Residuals   12 189.80   15.82                 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
  • Los dos tipos de riego, como factor independiente, tuvo diferencias con una significancia del 95%.
# Prueba de normalidad de residuos
shapiro.test(A.CC.M3$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  A.CC.M3$residuals
## W = 0.96228, p-value = 0.7034
  • El hecho de que no sea significativo (p-value > 0.05), representa que los datos tienen una distribución normal.
TukeyHSD(A.CC.M3)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = SPAD ~ F_riego * F_AA, data = datos.CC.M3)
## 
## $F_riego
##         diff       lwr       upr     p adj
## 1-0.5 -6.025 -11.02787 -1.022125 0.0222219
## 
## $F_AA
##                    diff       lwr      upr     p adj
## 1000 ppm-0 ppm    2.425  -4.07240 8.922400 0.5933167
## 600 ppm-0 ppm    -3.925 -10.42240 2.572400 0.2784760
## 600 ppm-1000 ppm -6.350 -13.85255 1.152551 0.1012683
  • Los dos riegos presentan diferencias significativas.
# Anova - Contenido de clorofilas - Muestreo 3 - Comparación entre los tratamientos

A.CC.M3.CT <- aov(SPAD ~ Tratamiento, data=datos.CC.M3)
summary(A.CC.M3.CT)
##             Df Sum Sq Mean Sq F value Pr(>F)  
## Tratamiento  3  192.9   64.31   4.066  0.033 *
## Residuals   12  189.8   15.82                 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Tukey_A.CC.M3.CT <- TukeyHSD(A.CC.M3.CT)
Tukey_A.CC.M3.CT
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = SPAD ~ Tratamiento, data = datos.CC.M3)
## 
## $Tratamiento
##                                  diff        lwr        upr     p adj
## 50 + AS 1000ppm-50 - AS         2.050  -6.299127 10.3991272 0.8836377
## 50 + AS 600ppm-50 - AS         -4.300 -12.649127  4.0491272 0.4515449
## Control-50 - AS                -6.775 -15.124127  1.5741272 0.1280824
## 50 + AS 600ppm-50 + AS 1000ppm -6.350 -14.699127  1.9991272 0.1629764
## Control-50 + AS 1000ppm        -8.825 -17.174127 -0.4758728 0.0372824
## Control-50 + AS 600ppm         -2.475 -10.824127  5.8741272 0.8150759
  • Podemos observar que solo el tratamiento verde (50 + AS 1000ppm) tuvo diferencias significativas con su control.
A.CC.M3.DT <- duncan.test(A.CC.M3.CT, 'Tratamiento', console = T)
## 
## Study: A.CC.M3.CT ~ "Tratamiento"
## 
## Duncan's new multiple range test
## for SPAD 
## 
## Mean Square Error:  15.81687 
## 
## Tratamiento,  means
## 
##                   SPAD      std r       se  Min  Max    Q25   Q50    Q75
## 50 - AS         49.675 4.867837 4 1.988522 43.7 55.5 47.600 49.75 51.825
## 50 + AS 1000ppm 51.725 2.056494 4 1.988522 50.3 54.7 50.375 50.95 52.300
## 50 + AS 600ppm  45.375 3.986122 4 1.988522 39.5 48.0 44.600 47.00 47.775
## Control         42.900 4.410593 4 1.988522 38.6 47.8 39.500 42.60 46.000
## 
## Alpha: 0.05 ; DF Error: 12 
## 
## Critical Range
##        2        3        4 
## 6.127245 6.413467 6.586885 
## 
## Means with the same letter are not significantly different.
## 
##                   SPAD groups
## 50 + AS 1000ppm 51.725      a
## 50 - AS         49.675      a
## 50 + AS 600ppm  45.375     ab
## Control         42.900      b
A.CC.M3.DT
## $statistics
##    MSerror Df     Mean       CV
##   15.81687 12 47.41875 8.387069
## 
## $parameters
##     test      name.t ntr alpha
##   Duncan Tratamiento   4  0.05
## 
## $duncan
##      Table CriticalRange
## 2 3.081307      6.127245
## 3 3.225244      6.413467
## 4 3.312453      6.586885
## 
## $means
##                   SPAD      std r       se  Min  Max    Q25   Q50    Q75
## 50 - AS         49.675 4.867837 4 1.988522 43.7 55.5 47.600 49.75 51.825
## 50 + AS 1000ppm 51.725 2.056494 4 1.988522 50.3 54.7 50.375 50.95 52.300
## 50 + AS 600ppm  45.375 3.986122 4 1.988522 39.5 48.0 44.600 47.00 47.775
## Control         42.900 4.410593 4 1.988522 38.6 47.8 39.500 42.60 46.000
## 
## $comparison
## NULL
## 
## $groups
##                   SPAD groups
## 50 + AS 1000ppm 51.725      a
## 50 - AS         49.675      a
## 50 + AS 600ppm  45.375     ab
## Control         42.900      b
## 
## attr(,"class")
## [1] "group"

Análisis estadístico - Muestreo 4

# Datos - Contenido de clorofilas - Muestreo 4

datos.CC.M4 <- data.frame(Var_M4$`Factor riego`, Var_M4$`Factor ácido ascórbico`, Var_M4$Tratamiento, Var_M4$SPAD)
colnames(datos.CC.M4) <- c("F_riego", "F_AA", "Tratamiento", "SPAD")
datos.CC.M4
datos.CC.M4$F_riego <- as.factor(datos.CC.M4$F_riego)
datos.CC.M4$F_AA <- as.factor(datos.CC.M4$F_AA)
str(datos.CC.M4)
## 'data.frame':    16 obs. of  4 variables:
##  $ F_riego    : Factor w/ 2 levels "0.5","1": 2 2 2 2 1 1 1 1 1 1 ...
##  $ F_AA       : Factor w/ 3 levels "0 ppm","1000 ppm",..: 1 1 1 1 1 1 1 1 3 3 ...
##  $ Tratamiento: chr  "Control" "Control" "Control" "Control" ...
##  $ SPAD       : num  39.7 46.8 38.9 45.4 49.6 54.5 48.5 56.2 50.9 58.7 ...
# Anova - Contenido de clorofilas - Muestreo 4
A.CC.M4 <- aov(SPAD ~ F_riego*F_AA, data = datos.CC.M4)
summary(A.CC.M4)
##             Df Sum Sq Mean Sq F value  Pr(>F)   
## F_riego      1  325.5   325.5  14.733 0.00236 **
## F_AA         2   28.8    14.4   0.653 0.53812   
## Residuals   12  265.1    22.1                   
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
  • Los dos tipos de riego, como factor independiente, tuvo diferencias con una significancia del 99%.
# Prueba de normalidad de residuos
shapiro.test(A.CC.M4$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  A.CC.M4$residuals
## W = 0.95218, p-value = 0.5251
  • El hecho de que no sea significativo (p-value > 0.05), representa que los datos tienen una distribución normal.
TukeyHSD(A.CC.M4)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = SPAD ~ F_riego * F_AA, data = datos.CC.M4)
## 
## $F_riego
##            diff       lwr     upr     p adj
## 1-0.5 -10.41667 -16.32953 -4.5038 0.0023593
## 
## $F_AA
##                        diff       lwr       upr     p adj
## 1000 ppm-0 ppm    2.6416667  -5.03757 10.320904 0.6398957
## 600 ppm-0 ppm    -0.8083333  -8.48757  6.870904 0.9576104
## 600 ppm-1000 ppm -3.4500000 -12.31722  5.417219 0.5682824
  • Los dos riegos presentan diferencias significativas.
# Anova - Contenido de clorofilas - Muestreo 4 - Comparación entre los tratamientos

A.CC.M4.CT <- aov(SPAD ~ Tratamiento, data=datos.CC.M4)
summary(A.CC.M4.CT)
##             Df Sum Sq Mean Sq F value Pr(>F)  
## Tratamiento  3  354.4  118.12   5.346 0.0143 *
## Residuals   12  265.1   22.09                 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Tukey_A.CC.M4.CT <- TukeyHSD(A.CC.M4.CT)
Tukey_A.CC.M4.CT
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = SPAD ~ Tratamiento, data = datos.CC.M4)
## 
## $Tratamiento
##                                  diff        lwr        upr     p adj
## 50 + AS 1000ppm-50 - AS          3.10  -6.767782 12.9677821 0.7882944
## 50 + AS 600ppm-50 - AS          -0.35 -10.217782  9.5177821 0.9995573
## Control-50 - AS                 -9.50 -19.367782  0.3677821 0.0604803
## 50 + AS 600ppm-50 + AS 1000ppm  -3.45 -13.317782  6.4177821 0.7313168
## Control-50 + AS 1000ppm        -12.60 -22.467782 -2.7322179 0.0118922
## Control-50 + AS 600ppm          -9.15 -19.017782  0.7177821 0.0723725
  • Podemos observar que solo el tratamiento verde (50 + AS 1000ppm), presenta diferencias estadísticamente significativas, sin embargo, a pesar de que los otros dos tratamientos; el amarillo (50 - AS) y el azul (50 + AS 600ppm); se ubican por encima del 5%, los valores de cada uno nos indica que a nivel agronomico los podemos tener en cuenta.
A.CC.M4.DT <- duncan.test(A.CC.M4.CT, 'Tratamiento', console = T)
## 
## Study: A.CC.M4.CT ~ "Tratamiento"
## 
## Duncan's new multiple range test
## for SPAD 
## 
## Mean Square Error:  22.09417 
## 
## Tratamiento,  means
## 
##                  SPAD      std r       se  Min  Max    Q25   Q50    Q75
## 50 - AS         52.20 3.730058 4 2.350222 48.5 56.2 49.325 52.05 54.925
## 50 + AS 1000ppm 55.30 3.995831 4 2.350222 49.6 58.4 54.025 56.60 57.875
## 50 + AS 600ppm  51.85 6.530697 4 2.350222 43.3 58.7 49.000 52.70 55.550
## Control         42.70 3.980787 4 2.350222 38.9 46.8 39.500 42.55 45.750
## 
## Alpha: 0.05 ; DF Error: 12 
## 
## Critical Range
##        2        3        4 
## 7.241753 7.580037 7.784999 
## 
## Means with the same letter are not significantly different.
## 
##                  SPAD groups
## 50 + AS 1000ppm 55.30      a
## 50 - AS         52.20      a
## 50 + AS 600ppm  51.85      a
## Control         42.70      b
A.CC.M4.DT
## $statistics
##    MSerror Df    Mean       CV
##   22.09417 12 50.5125 9.305505
## 
## $parameters
##     test      name.t ntr alpha
##   Duncan Tratamiento   4  0.05
## 
## $duncan
##      Table CriticalRange
## 2 3.081307      7.241753
## 3 3.225244      7.580037
## 4 3.312453      7.784999
## 
## $means
##                  SPAD      std r       se  Min  Max    Q25   Q50    Q75
## 50 - AS         52.20 3.730058 4 2.350222 48.5 56.2 49.325 52.05 54.925
## 50 + AS 1000ppm 55.30 3.995831 4 2.350222 49.6 58.4 54.025 56.60 57.875
## 50 + AS 600ppm  51.85 6.530697 4 2.350222 43.3 58.7 49.000 52.70 55.550
## Control         42.70 3.980787 4 2.350222 38.9 46.8 39.500 42.55 45.750
## 
## $comparison
## NULL
## 
## $groups
##                  SPAD groups
## 50 + AS 1000ppm 55.30      a
## 50 - AS         52.20      a
## 50 + AS 600ppm  51.85      a
## Control         42.70      b
## 
## attr(,"class")
## [1] "group"

Análisis descriptivo - Contenido de clorofilas

# Datos - Gráfico - Contenido de clorofilas

Datos.G.CC <- data.frame(factor(Tratamientos, ordered = TRUE, levels = c("Control", "50 - AS", "50 + AS 600ppm", "50 + AS 1000ppm")), Var_M1$SPAD, Var_M2$SPAD, Var_M3$SPAD, Var_M4$SPAD)
colnames(Datos.G.CC) <- c("Tratamientos", "31", "38","45", "52")
Datos.G.CC
# Unificar la variable respuesta en una sola columna
df.long.CC = gather(Datos.G.CC, dds, Contenido_de_clorofilas, 2:5)
df.long.CC
# Diferencias significativas con el control
#          M1  M2  M3  M4
DS.CC <- c("a", "a", "b", "b",  #T1
           "a", "a", "a*", "a*", #T2
           "a", "a", "ab", "a*",  #T3
           "a", "a", "a*", "a*") #T4

# Media y desviación estandar de la media de los tratamientos en los diferentes muestreos.
df.sumzd.CC = group_by(df.long.CC, Tratamientos, dds, ) %>% summarise(mean = mean(Contenido_de_clorofilas), sd = sd(Contenido_de_clorofilas))
## `summarise()` has grouped output by 'Tratamientos'. You can override using the
## `.groups` argument.
# Con diferencias significativas de los tratamientos con su control
df.sumzd.CC.ds <- data.frame(df.sumzd.CC, DS.CC)
df.sumzd.CC.ds
G.CC = ggplot(df.sumzd.CC, aes(x=dds, y=mean, fill=Tratamientos))+
  geom_bar(stat = "identity", position = "dodge", color = "black", alpha = 0.5)+
  geom_errorbar(aes(ymin=mean-sd, ymax=mean+sd), width = 0.25, size=0.5, position = position_dodge(0.9), alpha = 0.5)+
  scale_fill_manual(values=c("red", "yellow", "blue", "green")) +
  theme_minimal()+
  ggtitle("Contenido relativo de clorofilas \nen los diferentes muestreos") + theme(plot.title = element_text(family = "Times New Roman",
size = rel(2),
vjust = 0.5, 
hjust = 0.5))+
   theme(axis.text.x = element_text(size=15),
        axis.text.y = element_text(size=15))+
  labs(x = "Días después de siembra", y = "mg de clorofila / g de tejido vegetal")+
  theme(axis.title.x = element_text(family = "Times New Roman", size = rel(1.5)), axis.title.y = element_text(family = "Times New Roman", size = rel(1.5)))+
  theme(legend.title = element_text(family = "Times New Roman"))+
  geom_text(aes(x=dds, y= mean+1.5, label=DS.CC),
            position = position_dodge(width = 1), size = 5)+
  coord_cartesian(ylim = c(35, 60))
G.CC

Altura de la parte aérea

Análisis estadístico - Muestreo 1

# Datos - Altura de la parte aérea - Muestreo 1

datos.APA.M1 <- data.frame(Var_M1$`Factor riego`, Var_M1$`Factor ácido ascórbico`, Var_M1$Tratamiento, Var_M1$`Altura Aérea (cm)`)
colnames(datos.APA.M1) <- c("F_riego", "F_AA", "Tratamiento", "Altura_aérea")
datos.APA.M1
datos.APA.M1$F_riego <- as.factor(datos.APA.M1$F_riego)
datos.APA.M1$F_AA <- as.factor(datos.APA.M1$F_AA)
str(datos.APA.M1)
## 'data.frame':    16 obs. of  4 variables:
##  $ F_riego     : Factor w/ 2 levels "0.5","1": 2 2 2 2 1 1 1 1 1 1 ...
##  $ F_AA        : Factor w/ 3 levels "0 ppm","1000 ppm",..: 1 1 1 1 1 1 1 1 3 3 ...
##  $ Tratamiento : chr  "Control" "Control" "Control" "Control" ...
##  $ Altura_aérea: num  12 15.8 11.1 11.9 10.8 9.9 9.1 13 10.8 11.5 ...
# Anova - Altura de la parte aérea - Muestreo 1
A.APA.M1 <- aov(Altura_aérea ~ F_riego*F_AA, data = datos.APA.M1)
summary(A.APA.M1)
##             Df Sum Sq Mean Sq F value Pr(>F)  
## F_riego      1  15.19  15.187   6.959 0.0217 *
## F_AA         2   4.02   2.010   0.921 0.4245  
## Residuals   12  26.19   2.183                 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
  • Los dos tipos de riego, como factor independiente, tuvo diferencias con una significancia del 95%.
# Prueba de normalidad de residuos
shapiro.test(A.APA.M1$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  A.APA.M1$residuals
## W = 0.9105, p-value = 0.1185
  • El hecho de que no sea significativo (p-value > 0.05), representa que los datos tienen una distribución normal.
TukeyHSD(A.APA.M1)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = Altura_aérea ~ F_riego * F_AA, data = datos.APA.M1)
## 
## $F_riego
##       diff       lwr      upr     p adj
## 1-0.5 2.25 0.3916119 4.108388 0.0216557
## 
## $F_AA
##                    diff       lwr      upr     p adj
## 1000 ppm-0 ppm   -0.925 -3.338550 1.488550 0.5774508
## 600 ppm-0 ppm     0.425 -1.988550 2.838550 0.8865704
## 600 ppm-1000 ppm  1.350 -1.436928 4.136928 0.4257821
  • Los dos riegos presentan diferencias significativas.
# Anova - Altura de la parte aérea - Muestreo 1 - Comparación entre los tratamientos

A.APA.M1.CT <- aov(Altura_aérea ~ Tratamiento, data=datos.APA.M1)
summary(A.APA.M1.CT)
##             Df Sum Sq Mean Sq F value Pr(>F)  
## Tratamiento  3  19.21   6.402   2.934 0.0767 .
## Residuals   12  26.19   2.183                 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Tukey_A.APA.M1.CT <- TukeyHSD(A.APA.M1.CT)
Tukey_A.APA.M1.CT
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = Altura_aérea ~ Tratamiento, data = datos.APA.M1)
## 
## $Tratamiento
##                                 diff         lwr      upr     p adj
## 50 + AS 1000ppm-50 - AS        -1.05 -4.15140057 2.051401 0.7495008
## 50 + AS 600ppm-50 - AS          0.30 -2.80140057 3.401401 0.9913136
## Control-50 - AS                 2.00 -1.10140057 5.101401 0.2727674
## 50 + AS 600ppm-50 + AS 1000ppm  1.35 -1.75140057 4.451401 0.5845050
## Control-50 + AS 1000ppm         3.05 -0.05140057 6.151401 0.0544253
## Control-50 + AS 600ppm          1.70 -1.40140057 4.801401 0.4006626
  • Podemos observar que ninguno de los tratamientos tiene diferencias significativas con el control para el muestreo 1, sin embargo, el tratamiento verde (50 + AS 1000ppm), presentó un valor del 5.4%, por lo que puede ser un valor tenido en cuenta de manera agronómica.
A.APA.M1.DT <- duncan.test(A.APA.M1.CT, 'Tratamiento', console = T)
## 
## Study: A.APA.M1.CT ~ "Tratamiento"
## 
## Duncan's new multiple range test
## for Altura_aérea 
## 
## Mean Square Error:  2.1825 
## 
## Tratamiento,  means
## 
##                 Altura_aérea       std r        se  Min  Max    Q25   Q50
## 50 - AS                10.70 1.6832508 4 0.7386643  9.1 13.0  9.700 10.35
## 50 + AS 1000ppm         9.65 1.0344080 4 0.7386643  8.2 10.6  9.325  9.90
## 50 + AS 600ppm         11.00 0.6271629 4 0.7386643 10.2 11.5 10.650 11.15
## Control                12.70 2.1055482 4 0.7386643 11.1 15.8 11.700 11.95
##                    Q75
## 50 - AS         11.350
## 50 + AS 1000ppm 10.225
## 50 + AS 600ppm  11.500
## Control         12.950
## 
## Alpha: 0.05 ; DF Error: 12 
## 
## Critical Range
##        2        3        4 
## 2.276051 2.382372 2.446791 
## 
## Means with the same letter are not significantly different.
## 
##                 Altura_aérea groups
## Control                12.70      a
## 50 + AS 600ppm         11.00     ab
## 50 - AS                10.70     ab
## 50 + AS 1000ppm         9.65      b
A.APA.M1.DT
## $statistics
##   MSerror Df    Mean       CV
##    2.1825 12 11.0125 13.41502
## 
## $parameters
##     test      name.t ntr alpha
##   Duncan Tratamiento   4  0.05
## 
## $duncan
##      Table CriticalRange
## 2 3.081307      2.276051
## 3 3.225244      2.382372
## 4 3.312453      2.446791
## 
## $means
##                 Altura_aérea       std r        se  Min  Max    Q25   Q50
## 50 - AS                10.70 1.6832508 4 0.7386643  9.1 13.0  9.700 10.35
## 50 + AS 1000ppm         9.65 1.0344080 4 0.7386643  8.2 10.6  9.325  9.90
## 50 + AS 600ppm         11.00 0.6271629 4 0.7386643 10.2 11.5 10.650 11.15
## Control                12.70 2.1055482 4 0.7386643 11.1 15.8 11.700 11.95
##                    Q75
## 50 - AS         11.350
## 50 + AS 1000ppm 10.225
## 50 + AS 600ppm  11.500
## Control         12.950
## 
## $comparison
## NULL
## 
## $groups
##                 Altura_aérea groups
## Control                12.70      a
## 50 + AS 600ppm         11.00     ab
## 50 - AS                10.70     ab
## 50 + AS 1000ppm         9.65      b
## 
## attr(,"class")
## [1] "group"

Análisis estadístico - Muestreo 2

# Datos - Altura de la parte aérea - Muestreo 2

datos.APA.M2 <- data.frame(Var_M2$`Factor riego`, Var_M2$`Factor ácido ascórbico`, Var_M2$Tratamiento, Var_M2$`Altura Aérea (cm)`)
colnames(datos.APA.M2) <- c("F_riego", "F_AA", "Tratamiento", "Altura_aérea")
datos.APA.M2
datos.APA.M2$F_riego <- as.factor(datos.APA.M2$F_riego)
datos.APA.M2$F_AA <- as.factor(datos.APA.M2$F_AA)
str(datos.APA.M2)
## 'data.frame':    16 obs. of  4 variables:
##  $ F_riego     : Factor w/ 2 levels "0.5","1": 2 2 2 2 1 1 1 1 1 1 ...
##  $ F_AA        : Factor w/ 3 levels "0 ppm","1000 ppm",..: 1 1 1 1 1 1 1 1 3 3 ...
##  $ Tratamiento : chr  "Control" "Control" "Control" "Control" ...
##  $ Altura_aérea: num  14.6 13.8 13.9 16.3 11.1 11.6 9.9 9.9 10.8 10.5 ...
# Anova - Altura de la parte aérea - Muestreo 2
A.APA.M2 <- aov(Altura_aérea ~ F_riego*F_AA, data = datos.APA.M2)
summary(A.APA.M2)
##             Df Sum Sq Mean Sq F value   Pr(>F)    
## F_riego      1  43.13   43.13  26.097 0.000258 ***
## F_AA         2   1.95    0.97   0.589 0.570187    
## Residuals   12  19.83    1.65                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
  • Los dos tipos de riego, como factor independiente, tuvo diferencias con una significancia del 99.9%.
# Prueba de normalidad de residuos
shapiro.test(A.APA.M2$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  A.APA.M2$residuals
## W = 0.93728, p-value = 0.317
  • El hecho de que no sea significativo (p-value > 0.05), representa que los datos tienen una distribución normal.
TukeyHSD(A.APA.M2)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = Altura_aérea ~ F_riego * F_AA, data = datos.APA.M2)
## 
## $F_riego
##           diff     lwr      upr     p adj
## 1-0.5 3.791667 2.17449 5.408843 0.0002581
## 
## $F_AA
##                        diff       lwr      upr     p adj
## 1000 ppm-0 ppm    0.6833333 -1.416948 2.783614 0.6696715
## 600 ppm-0 ppm    -0.2166667 -2.316948 1.883614 0.9592454
## 600 ppm-1000 ppm -0.9000000 -3.325195 1.525195 0.5966848
  • Los dos riegos presentan diferencias significativas.
# Anova - Altura de la parte aérea - Muestreo 2 - Comparación entre los tratamientos

A.APA.M2.CT <- aov(Altura_aérea ~ Tratamiento, data=datos.APA.M2)
summary(A.APA.M2.CT)
##             Df Sum Sq Mean Sq F value  Pr(>F)   
## Tratamiento  3  45.08  15.026   9.092 0.00205 **
## Residuals   12  19.83   1.653                   
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Tukey_A.APA.M2.CT <- TukeyHSD(A.APA.M2.CT)
Tukey_A.APA.M2.CT
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = Altura_aérea ~ Tratamiento, data = datos.APA.M2)
## 
## $Tratamiento
##                                  diff        lwr      upr     p adj
## 50 + AS 1000ppm-50 - AS         0.800 -1.8988506 3.498851 0.8150990
## 50 + AS 600ppm-50 - AS         -0.100 -2.7988506 2.598851 0.9994955
## Control-50 - AS                 4.025  1.3261494 6.723851 0.0039574
## 50 + AS 600ppm-50 + AS 1000ppm -0.900 -3.5988506 1.798851 0.7577373
## Control-50 + AS 1000ppm         3.225  0.5261494 5.923851 0.0182067
## Control-50 + AS 600ppm          4.125  1.4261494 6.823851 0.0032835
  • Podemos observar que todos los tratamientos tuvieron diferencias significativas con respecto al control.
A.APA.M2.DT <- duncan.test(A.APA.M2.CT, 'Tratamiento', console = T)
## 
## Study: A.APA.M2.CT ~ "Tratamiento"
## 
## Duncan's new multiple range test
## for Altura_aérea 
## 
## Mean Square Error:  1.652708 
## 
## Tratamiento,  means
## 
##                 Altura_aérea       std r        se  Min  Max    Q25   Q50
## 50 - AS               10.625 0.8616844 4 0.6427885  9.9 11.6  9.900 10.50
## 50 + AS 1000ppm       11.425 2.1140404 4 0.6427885  9.2 14.2 10.250 11.15
## 50 + AS 600ppm        10.525 0.2500000 4 0.6427885 10.2 10.8 10.425 10.55
## Control               14.650 1.1561430 4 0.6427885 13.8 16.3 13.875 14.25
##                    Q75
## 50 - AS         11.225
## 50 + AS 1000ppm 12.325
## 50 + AS 600ppm  10.650
## Control         15.025
## 
## Alpha: 0.05 ; DF Error: 12 
## 
## Critical Range
##        2        3        4 
## 1.980629 2.073150 2.129207 
## 
## Means with the same letter are not significantly different.
## 
##                 Altura_aérea groups
## Control               14.650      a
## 50 + AS 1000ppm       11.425      b
## 50 - AS               10.625      b
## 50 + AS 600ppm        10.525      b
A.APA.M2.DT
## $statistics
##    MSerror Df     Mean       CV
##   1.652708 12 11.80625 10.88895
## 
## $parameters
##     test      name.t ntr alpha
##   Duncan Tratamiento   4  0.05
## 
## $duncan
##      Table CriticalRange
## 2 3.081307      1.980629
## 3 3.225244      2.073150
## 4 3.312453      2.129207
## 
## $means
##                 Altura_aérea       std r        se  Min  Max    Q25   Q50
## 50 - AS               10.625 0.8616844 4 0.6427885  9.9 11.6  9.900 10.50
## 50 + AS 1000ppm       11.425 2.1140404 4 0.6427885  9.2 14.2 10.250 11.15
## 50 + AS 600ppm        10.525 0.2500000 4 0.6427885 10.2 10.8 10.425 10.55
## Control               14.650 1.1561430 4 0.6427885 13.8 16.3 13.875 14.25
##                    Q75
## 50 - AS         11.225
## 50 + AS 1000ppm 12.325
## 50 + AS 600ppm  10.650
## Control         15.025
## 
## $comparison
## NULL
## 
## $groups
##                 Altura_aérea groups
## Control               14.650      a
## 50 + AS 1000ppm       11.425      b
## 50 - AS               10.625      b
## 50 + AS 600ppm        10.525      b
## 
## attr(,"class")
## [1] "group"

Análisis estadístico - Muestreo 3

# Datos - Altura de la parte aérea - Muestreo 3

datos.APA.M3 <- data.frame(Var_M3$`Factor riego`, Var_M3$`Factor ácido ascórbico`, Var_M3$Tratamiento, Var_M3$`Altura Aérea (cm)`)
colnames(datos.APA.M3) <- c("F_riego", "F_AA", "Tratamiento", "Altura_aérea")
datos.APA.M3
datos.APA.M3$F_riego <- as.factor(datos.APA.M3$F_riego)
datos.APA.M3$F_AA <- as.factor(datos.APA.M3$F_AA)
str(datos.APA.M3)
## 'data.frame':    16 obs. of  4 variables:
##  $ F_riego     : Factor w/ 2 levels "0.5","1": 2 2 2 2 1 1 1 1 1 1 ...
##  $ F_AA        : Factor w/ 3 levels "0 ppm","1000 ppm",..: 1 1 1 1 1 1 1 1 3 3 ...
##  $ Tratamiento : chr  "Control" "Control" "Control" "Control" ...
##  $ Altura_aérea: num  15 19.5 14.7 17.3 11.1 9.2 7.8 11.9 11.1 9.2 ...
# Anova - Altura de la parte aérea - Muestreo 3
A.APA.M3 <- aov(Altura_aérea ~ F_riego*F_AA, data = datos.APA.M3)
summary(A.APA.M3)
##             Df Sum Sq Mean Sq F value   Pr(>F)    
## F_riego      1 116.25  116.25  33.658 8.45e-05 ***
## F_AA         2   1.68    0.84   0.243    0.788    
## Residuals   12  41.45    3.45                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
  • Los dos tipos de riego, como factor independiente, tuvo diferencias con una significancia del 99.9%.
# Prueba de normalidad de residuos
shapiro.test(A.APA.M3$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  A.APA.M3$residuals
## W = 0.94284, p-value = 0.3852
  • El hecho de que no sea significativo (p-value > 0.05), representa que los datos tienen una distribución normal.
TukeyHSD(A.APA.M3)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = Altura_aérea ~ F_riego * F_AA, data = datos.APA.M3)
## 
## $F_riego
##        diff      lwr      upr    p adj
## 1-0.5 6.225 3.887144 8.562856 8.45e-05
## 
## $F_AA
##                  diff       lwr      upr     p adj
## 1000 ppm-0 ppm    0.7 -2.336252 3.736252 0.8147701
## 600 ppm-0 ppm     0.1 -2.936252 3.136252 0.9957540
## 600 ppm-1000 ppm -0.6 -4.105962 2.905962 0.8924502
  • Los dos riegos presentan diferencias significativas.
# Anova - Altura de la parte aérea - Muestreo 3 - Comparación entre los tratamientos

A.APA.M3.CT <- aov(Altura_aérea ~ Tratamiento, data=datos.APA.M3)
summary(A.APA.M3.CT)
##             Df Sum Sq Mean Sq F value   Pr(>F)    
## Tratamiento  3 117.93   39.31   11.38 0.000799 ***
## Residuals   12  41.45    3.45                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Tukey_A.APA.M3.CT <- TukeyHSD(A.APA.M3.CT)
Tukey_A.APA.M3.CT
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = Altura_aérea ~ Tratamiento, data = datos.APA.M3)
## 
## $Tratamiento
##                                  diff       lwr       upr     p adj
## 50 + AS 1000ppm-50 - AS         0.900 -3.001569  4.801569 0.9008866
## 50 + AS 600ppm-50 - AS          0.300 -3.601569  4.201569 0.9955751
## Control-50 - AS                 6.625  2.723431 10.526569 0.0014203
## 50 + AS 600ppm-50 + AS 1000ppm -0.600 -4.501569  3.301569 0.9670479
## Control-50 + AS 1000ppm         5.725  1.823431  9.626569 0.0044693
## Control-50 + AS 600ppm          6.325  2.423431 10.226569 0.0020694
  • Podemos observar que todos los tratamientos tuvieron diferencias significativas con respecto a su control.
A.APA.M3.DT <- duncan.test(A.APA.M3.CT, 'Tratamiento', console = T)
## 
## Study: A.APA.M3.CT ~ "Tratamiento"
## 
## Duncan's new multiple range test
## for Altura_aérea 
## 
## Mean Square Error:  3.453958 
## 
## Tratamiento,  means
## 
##                 Altura_aérea      std r        se  Min  Max    Q25   Q50    Q75
## 50 - AS               10.000 1.852926 4 0.9292414  7.8 11.9  8.850 10.15 11.300
## 50 + AS 1000ppm       10.900 1.023067 4 0.9292414 10.1 12.4 10.400 10.55 11.050
## 50 + AS 600ppm        10.300 2.076857 4 0.9292414  8.1 12.8  8.925 10.15 11.525
## Control               16.625 2.241093 4 0.9292414 14.7 19.5 14.925 16.15 17.850
## 
## Alpha: 0.05 ; DF Error: 12 
## 
## Critical Range
##        2        3        4 
## 2.863278 2.997030 3.078068 
## 
## Means with the same letter are not significantly different.
## 
##                 Altura_aérea groups
## Control               16.625      a
## 50 + AS 1000ppm       10.900      b
## 50 + AS 600ppm        10.300      b
## 50 - AS               10.000      b
A.APA.M3.DT
## $statistics
##    MSerror Df     Mean       CV
##   3.453958 12 11.95625 15.54403
## 
## $parameters
##     test      name.t ntr alpha
##   Duncan Tratamiento   4  0.05
## 
## $duncan
##      Table CriticalRange
## 2 3.081307      2.863278
## 3 3.225244      2.997030
## 4 3.312453      3.078068
## 
## $means
##                 Altura_aérea      std r        se  Min  Max    Q25   Q50    Q75
## 50 - AS               10.000 1.852926 4 0.9292414  7.8 11.9  8.850 10.15 11.300
## 50 + AS 1000ppm       10.900 1.023067 4 0.9292414 10.1 12.4 10.400 10.55 11.050
## 50 + AS 600ppm        10.300 2.076857 4 0.9292414  8.1 12.8  8.925 10.15 11.525
## Control               16.625 2.241093 4 0.9292414 14.7 19.5 14.925 16.15 17.850
## 
## $comparison
## NULL
## 
## $groups
##                 Altura_aérea groups
## Control               16.625      a
## 50 + AS 1000ppm       10.900      b
## 50 + AS 600ppm        10.300      b
## 50 - AS               10.000      b
## 
## attr(,"class")
## [1] "group"

Análisis estadístico - Muestreo 4

# Datos - Altura de la parte aérea - Muestreo 4

datos.APA.M4 <- data.frame(Var_M4$`Factor riego`, Var_M4$`Factor ácido ascórbico`, Var_M4$Tratamiento, Var_M4$`Altura Aérea (cm)`)
colnames(datos.APA.M4) <- c("F_riego", "F_AA", "Tratamiento", "Altura_aérea")
datos.APA.M4
datos.APA.M4$F_riego <- as.factor(datos.APA.M4$F_riego)
datos.APA.M4$F_AA <- as.factor(datos.APA.M4$F_AA)
str(datos.APA.M4)
## 'data.frame':    16 obs. of  4 variables:
##  $ F_riego     : Factor w/ 2 levels "0.5","1": 2 2 2 2 1 1 1 1 1 1 ...
##  $ F_AA        : Factor w/ 3 levels "0 ppm","1000 ppm",..: 1 1 1 1 1 1 1 1 3 3 ...
##  $ Tratamiento : chr  "Control" "Control" "Control" "Control" ...
##  $ Altura_aérea: num  17 16.5 16.6 13.8 9.6 10.4 11.4 11.8 11.4 10.2 ...
# Anova - Altura de la parte aérea - Muestreo 4
A.APA.M4 <- aov(Altura_aérea ~ F_riego*F_AA, data = datos.APA.M4)
summary(A.APA.M4)
##             Df Sum Sq Mean Sq F value   Pr(>F)    
## F_riego      1  68.16   68.16  52.283 1.04e-05 ***
## F_AA         2   1.01    0.51   0.388    0.687    
## Residuals   12  15.65    1.30                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
  • Los dos tipos de riego, como factor independiente, tuvo diferencias con una significancia del 99.9%.
# Prueba de normalidad de residuos
shapiro.test(A.APA.M4$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  A.APA.M4$residuals
## W = 0.93679, p-value = 0.3115
  • El hecho de que no sea significativo (p-value > 0.05), representa que los datos tienen una distribución normal.
TukeyHSD(A.APA.M4)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = Altura_aérea ~ F_riego * F_AA, data = datos.APA.M4)
## 
## $F_riego
##           diff      lwr      upr    p adj
## 1-0.5 4.766667 3.330329 6.203004 1.04e-05
## 
## $F_AA
##                       diff       lwr      upr     p adj
## 1000 ppm-0 ppm   0.3708333 -1.494586 2.236252 0.8581268
## 600 ppm-0 ppm    0.4458333 -1.419586 2.311252 0.8026369
## 600 ppm-1000 ppm 0.0750000 -2.079000 2.229000 0.9952559
  • Los dos riegos presentan diferencias significativas.
# Anova - Altura de la parte aérea - Muestreo 4 - Comparación entre los tratamientos

A.APA.M4.CT <- aov(Altura_aérea ~ Tratamiento, data=datos.APA.M4)
summary(A.APA.M4.CT)
##             Df Sum Sq Mean Sq F value   Pr(>F)    
## Tratamiento  3  69.18  23.058   17.69 0.000106 ***
## Residuals   12  15.65   1.304                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Tukey_A.APA.M4.CT <- TukeyHSD(A.APA.M4.CT)
Tukey_A.APA.M4.CT
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = Altura_aérea ~ Tratamiento, data = datos.APA.M4)
## 
## $Tratamiento
##                                 diff       lwr      upr     p adj
## 50 + AS 1000ppm-50 - AS        0.575 -1.822054 2.972054 0.8903648
## 50 + AS 600ppm-50 - AS         0.650 -1.747054 3.047054 0.8508237
## Control-50 - AS                5.175  2.777946 7.572054 0.0001705
## 50 + AS 600ppm-50 + AS 1000ppm 0.075 -2.322054 2.472054 0.9996958
## Control-50 + AS 1000ppm        4.600  2.202946 6.997054 0.0004988
## Control-50 + AS 600ppm         4.525  2.127946 6.922054 0.0005765
  • Podemos observar que todos los tratamientos tienen diferencias significativas con respectos a su control
A.APA.M4.DT <- duncan.test(A.APA.M4.CT, 'Tratamiento', console = T)
## 
## Study: A.APA.M4.CT ~ "Tratamiento"
## 
## Duncan's new multiple range test
## for Altura_aérea 
## 
## Mean Square Error:  1.30375 
## 
## Tratamiento,  means
## 
##                 Altura_aérea       std r        se  Min  Max    Q25   Q50
## 50 - AS               10.800 0.9933110 4 0.5709094  9.6 11.8 10.200 10.90
## 50 + AS 1000ppm       11.375 0.9215024 4 0.5709094 10.1 12.3 11.150 11.55
## 50 + AS 600ppm        11.450 1.1090537 4 0.5709094 10.2 12.9 11.025 11.35
## Control               15.975 1.4660036 4 0.5709094 13.8 17.0 15.825 16.55
##                    Q75
## 50 - AS         11.500
## 50 + AS 1000ppm 11.775
## 50 + AS 600ppm  11.775
## Control         16.700
## 
## Alpha: 0.05 ; DF Error: 12 
## 
## Critical Range
##        2        3        4 
## 1.759147 1.841322 1.891110 
## 
## Means with the same letter are not significantly different.
## 
##                 Altura_aérea groups
## Control               15.975      a
## 50 + AS 600ppm        11.450      b
## 50 + AS 1000ppm       11.375      b
## 50 - AS               10.800      b
A.APA.M4.DT
## $statistics
##   MSerror Df Mean       CV
##   1.30375 12 12.4 9.208216
## 
## $parameters
##     test      name.t ntr alpha
##   Duncan Tratamiento   4  0.05
## 
## $duncan
##      Table CriticalRange
## 2 3.081307      1.759147
## 3 3.225244      1.841322
## 4 3.312453      1.891110
## 
## $means
##                 Altura_aérea       std r        se  Min  Max    Q25   Q50
## 50 - AS               10.800 0.9933110 4 0.5709094  9.6 11.8 10.200 10.90
## 50 + AS 1000ppm       11.375 0.9215024 4 0.5709094 10.1 12.3 11.150 11.55
## 50 + AS 600ppm        11.450 1.1090537 4 0.5709094 10.2 12.9 11.025 11.35
## Control               15.975 1.4660036 4 0.5709094 13.8 17.0 15.825 16.55
##                    Q75
## 50 - AS         11.500
## 50 + AS 1000ppm 11.775
## 50 + AS 600ppm  11.775
## Control         16.700
## 
## $comparison
## NULL
## 
## $groups
##                 Altura_aérea groups
## Control               15.975      a
## 50 + AS 600ppm        11.450      b
## 50 + AS 1000ppm       11.375      b
## 50 - AS               10.800      b
## 
## attr(,"class")
## [1] "group"

Análisis descriptivo - Altura de la parte aérea

# Datos - Gráfico - Contenido de clorofilas

Datos.G.APA <- data.frame(factor(Tratamientos, ordered = TRUE, levels = c("Control", "50 - AS", "50 + AS 600ppm", "50 + AS 1000ppm")), Var_M1$`Altura Aérea (cm)`, Var_M2$`Altura Aérea (cm)`, Var_M3$`Altura Aérea (cm)`, Var_M4$`Altura Aérea (cm)`)
colnames(Datos.G.APA) <- c("Tratamientos", "31", "38","45", "52")
Datos.G.APA
# Unificar la variable respuesta en una sola columna
df.long.APA = gather(Datos.G.APA, dds, Altura_aérea, 2:5)
df.long.APA
# Diferencias significativas con el control
#          M1  M2  M3  M4
DS.APA <- c("a", "a", "a", "a",  #T1
           "ab", "b*", "b*", "b*", #T2
           "ab", "b*", "b*", "b*",  #T3
           "b*", "b*", "b*", "b*") #T4

# Media y desviación estandar de la media de los tratamientos en los diferentes muestreos.
df.sumzd.APA = group_by(df.long.APA, Tratamientos, dds, ) %>% summarise(mean = mean(Altura_aérea), sd = sd(Altura_aérea))
## `summarise()` has grouped output by 'Tratamientos'. You can override using the
## `.groups` argument.
# Con diferencias significativas de los tratamientos con su control
df.sumzd.APA.ds <- data.frame(df.sumzd.APA, DS.APA)
df.sumzd.APA.ds
G.APA = ggplot(df.sumzd.APA, aes(x=dds, y=mean, fill=Tratamientos))+
  geom_bar(stat = "identity", position = "dodge", color = "black", alpha = 0.5)+
  geom_errorbar(aes(ymin=mean-sd, ymax=mean+sd), width = 0.25, size=0.5, position = position_dodge(0.9), alpha = 0.5)+
  scale_fill_manual(values=c("red", "yellow", "blue", "green")) +
  theme_minimal()+
  ggtitle("Longitud promedio de la parte aérea \nen los diferentes muestreos") + theme(plot.title = element_text(family = "Times New Roman",
size = rel(1.5),
vjust = 0.5, 
hjust = 0.5))+
  labs(x = "Días después de siembra", y = "cm")+
  theme(axis.title.x = element_text(family = "Times New Roman"), axis.title.y = element_text(family = "Times New Roman"))+
  theme(legend.title = element_text(family = "Times New Roman"))+
  geom_text(aes(x=dds, y= mean+3, label=DS.APA),
            position = position_dodge(width = 1), size = 5)
G.APA

Contenido relativo de agua

Análisis estadístico - Muestreo 1

# Datos - CRA - Muestreo 1

datos.CRA.M1 <- data.frame(CRA_M1$`Factor riego`, CRA_M1$`Factor ácido ascórbico`, CRA_M1$Tratamiento, CRA_M1$`CRA (%)`)
colnames(datos.CRA.M1) <- c("F_riego", "F_AA", "Tratamiento", "CRA")
datos.CRA.M1
datos.CRA.M1$F_riego <- as.factor(datos.CRA.M1$F_riego)
datos.CRA.M1$F_AA <- as.factor(datos.CRA.M1$F_AA)
str(datos.CRA.M1)
## 'data.frame':    32 obs. of  4 variables:
##  $ F_riego    : Factor w/ 2 levels "0.5","1": 2 2 2 2 2 2 2 2 1 1 ...
##  $ F_AA       : Factor w/ 3 levels "0 ppm","1000 ppm",..: 1 1 1 1 1 1 1 1 1 1 ...
##  $ Tratamiento: chr  "Control" "Control" "Control" "Control" ...
##  $ CRA        : num  75.6 88.3 77.7 75.9 69.4 ...
# Anova - CRA - Muestreo 1
A.CRA.M1 <- aov(CRA ~ F_riego*F_AA, data = datos.CRA.M1)
summary(A.CRA.M1)
##             Df Sum Sq Mean Sq F value Pr(>F)  
## F_riego      1  180.5  180.48   5.848 0.0224 *
## F_AA         2  134.4   67.18   2.177 0.1322  
## Residuals   28  864.2   30.86                 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
  • Los dos tipos de riego, como factor independiente, tuvieron diferencias con una significancia del 95%.
# Prueba de normalidad de residuos
shapiro.test(A.CRA.M1$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  A.CRA.M1$residuals
## W = 0.95536, p-value = 0.2043
  • El hecho de que no sea significativo (p-value > 0.05), representa que los datos tienen una distribución normal.
TukeyHSD(A.CRA.M1)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = CRA ~ F_riego * F_AA, data = datos.CRA.M1)
## 
## $F_riego
##           diff       lwr      upr    p adj
## 1-0.5 5.484586 0.8387028 10.13047 0.022352
## 
## $F_AA
##                        diff       lwr       upr     p adj
## 1000 ppm-0 ppm   -0.4689017 -6.421265  5.483461 0.9792881
## 600 ppm-0 ppm     4.2895309 -1.662832 10.241894 0.1935871
## 600 ppm-1000 ppm  4.7584326 -2.114764 11.631629 0.2181225
  • Los dos tipos de riego presenta diferencias significativas.
# Anova - CRA - Muestreo 1 - Comparación entre los tratamientos

A.CRA.M1.CT <- aov(CRA ~ Tratamiento, data=datos.CRA.M1)
summary(A.CRA.M1.CT)
##             Df Sum Sq Mean Sq F value Pr(>F)  
## Tratamiento  3  314.8  104.95     3.4 0.0314 *
## Residuals   28  864.2   30.86                 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Tukey_A.CRA.M1.CT <- TukeyHSD(A.CRA.M1.CT)
Tukey_A.CRA.M1.CT
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = CRA ~ Tratamiento, data = datos.CRA.M1)
## 
## $Tratamiento
##                                     diff        lwr       upr     p adj
## 50 + AS 1000ppm-50 - AS        0.4862556 -7.0979450  8.070456 0.9980472
## 50 + AS 600ppm-50 - AS         5.2446882 -2.3395124 12.828889 0.2559147
## Control-50 - AS                7.3949003 -0.1893003 14.979101 0.0580147
## 50 + AS 600ppm-50 + AS 1000ppm 4.7584326 -2.8257681 12.342633 0.3360852
## Control-50 + AS 1000ppm        6.9086447 -0.6755560 14.492845 0.0840015
## Control-50 + AS 600ppm         2.1502121 -5.4339886  9.734413 0.8654710
  • Podemos observar que ninguno de los tratamientos tiene diferencias significativas con el control para el muestreo 1, sin embargo, el tratamiento amarillo (50 - AS) y verde (50 + AS 1000ppm), tuvieron valores muy cercanos a 5%, por lo tanto, lo podríamos tener en cuenta a nivel agronómico.
A.CRA.M1.DT <- duncan.test(A.CRA.M1.CT, 'Tratamiento', console = T)
## 
## Study: A.CRA.M1.CT ~ "Tratamiento"
## 
## Duncan's new multiple range test
## for CRA 
## 
## Mean Square Error:  30.86421 
## 
## Tratamiento,  means
## 
##                      CRA      std r       se      Min      Max      Q25
## 50 - AS         69.61368 3.953001 8 1.964186 61.62162 74.07407 67.84085
## 50 + AS 1000ppm 70.09994 2.807400 8 1.964186 65.50079 74.35508 68.41194
## 50 + AS 600ppm  74.85837 4.979654 8 1.964186 67.95977 83.39350 71.77992
## Control         77.00858 8.669036 8 1.964186 62.71845 88.42795 74.06250
##                      Q50      Q75
## 50 - AS         70.52384 72.07698
## 50 + AS 1000ppm 70.13269 71.35958
## 50 + AS 600ppm  74.97420 77.46417
## Control         76.77943 80.59863
## 
## Alpha: 0.05 ; DF Error: 28 
## 
## Critical Range
##        2        3        4 
## 5.690021 5.978681 6.165302 
## 
## Means with the same letter are not significantly different.
## 
##                      CRA groups
## Control         77.00858      a
## 50 + AS 600ppm  74.85837     ab
## 50 + AS 1000ppm 70.09994      b
## 50 - AS         69.61368      b
A.CRA.M1.DT
## $statistics
##    MSerror Df     Mean       CV
##   30.86421 28 72.89514 7.621299
## 
## $parameters
##     test      name.t ntr alpha
##   Duncan Tratamiento   4  0.05
## 
## $duncan
##      Table CriticalRange
## 2 2.896885      5.690021
## 3 3.043847      5.978681
## 4 3.138859      6.165302
## 
## $means
##                      CRA      std r       se      Min      Max      Q25
## 50 - AS         69.61368 3.953001 8 1.964186 61.62162 74.07407 67.84085
## 50 + AS 1000ppm 70.09994 2.807400 8 1.964186 65.50079 74.35508 68.41194
## 50 + AS 600ppm  74.85837 4.979654 8 1.964186 67.95977 83.39350 71.77992
## Control         77.00858 8.669036 8 1.964186 62.71845 88.42795 74.06250
##                      Q50      Q75
## 50 - AS         70.52384 72.07698
## 50 + AS 1000ppm 70.13269 71.35958
## 50 + AS 600ppm  74.97420 77.46417
## Control         76.77943 80.59863
## 
## $comparison
## NULL
## 
## $groups
##                      CRA groups
## Control         77.00858      a
## 50 + AS 600ppm  74.85837     ab
## 50 + AS 1000ppm 70.09994      b
## 50 - AS         69.61368      b
## 
## attr(,"class")
## [1] "group"

Análisis estadístico - Muestreo 2

# Datos - CRA - Muestreo 1

datos.CRA.M2 <- data.frame(CRA_M2$`Factor riego`, CRA_M2$`Factor ácido ascórbico`, CRA_M2$Tratamiento, CRA_M2$`CRA (%)`)
colnames(datos.CRA.M2) <- c("F_riego", "F_AA", "Tratamiento", "CRA")
datos.CRA.M2
datos.CRA.M2$F_riego <- as.factor(datos.CRA.M2$F_riego)
datos.CRA.M2$F_AA <- as.factor(datos.CRA.M2$F_AA)
str(datos.CRA.M2)
## 'data.frame':    32 obs. of  4 variables:
##  $ F_riego    : Factor w/ 2 levels "0.5","1": 2 2 2 2 2 2 2 2 1 1 ...
##  $ F_AA       : Factor w/ 3 levels "0 ppm","1000 ppm",..: 1 1 1 1 1 1 1 1 1 1 ...
##  $ Tratamiento: chr  "Control" "Control" "Control" "Control" ...
##  $ CRA        : num  74.1 76.3 77.4 69.8 78 ...
# Anova - CRA - Muestreo 2
A.CRA.M2 <- aov(CRA ~ F_riego*F_AA, data = datos.CRA.M2)
summary(A.CRA.M2)
##             Df Sum Sq Mean Sq F value Pr(>F)  
## F_riego      1  300.4   300.4   5.066 0.0324 *
## F_AA         2  174.2    87.1   1.469 0.2474  
## Residuals   28 1660.5    59.3                 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
  • Los dos tipos de concentración de ácido ascórbico, como factor independiente, tuvieron diferencias con una significancia del 95%.
# Prueba de normalidad de residuos
shapiro.test(A.CRA.M2$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  A.CRA.M2$residuals
## W = 0.97117, p-value = 0.5324
  • El hecho de que no sea significativo (p-value > 0.05), representa que los datos tienen una distribución normal.
TukeyHSD(A.CRA.M2)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = CRA ~ F_riego * F_AA, data = datos.CRA.M2)
## 
## $F_riego
##           diff       lwr      upr     p adj
## 1-0.5 7.075756 0.6358926 13.51562 0.0324456
## 
## $F_AA
##                        diff        lwr       upr     p adj
## 1000 ppm-0 ppm    5.0401418  -3.210691 13.290975 0.3009616
## 600 ppm-0 ppm     0.6719716  -7.578861  8.922804 0.9778790
## 600 ppm-1000 ppm -4.3681702 -13.895411  5.159071 0.5014071
  • Los dos tipos de riego presenta diferencias significativas.
# Anova - CRA - Muestreo 2 - Comparación entre los tratamientos

A.CRA.M2.CT <- aov(CRA ~ Tratamiento, data=datos.CRA.M2)
summary(A.CRA.M2.CT)
##             Df Sum Sq Mean Sq F value Pr(>F)  
## Tratamiento  3  474.6   158.2   2.668  0.067 .
## Residuals   28 1660.5    59.3                 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Tukey_A.CRA.M2.CT <- TukeyHSD(A.CRA.M2.CT)
Tukey_A.CRA.M2.CT
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = CRA ~ Tratamiento, data = datos.CRA.M2)
## 
## $Tratamiento
##                                     diff         lwr       upr     p adj
## 50 + AS 1000ppm-50 - AS         6.468170  -4.0446247 16.980965 0.3528087
## 50 + AS 600ppm-50 - AS          2.100000  -8.4127949 12.612795 0.9470176
## Control-50 - AS                 9.931812  -0.5809825 20.444607 0.0692571
## 50 + AS 600ppm-50 + AS 1000ppm -4.368170 -14.8809650  6.144625 0.6717789
## Control-50 + AS 1000ppm         3.463642  -7.0491527 13.976437 0.8051155
## Control-50 + AS 600ppm          7.831812  -2.6809825 18.344607 0.1999174
  • Podemos observar que ninguno de los tratamientos tiene diferencias significativas con el control para el muestreo 2.
A.CRA.M2.DT <- duncan.test(A.CRA.M2.CT, 'Tratamiento', console = T)
## 
## Study: A.CRA.M2.CT ~ "Tratamiento"
## 
## Duncan's new multiple range test
## for CRA 
## 
## Mean Square Error:  59.30236 
## 
## Tratamiento,  means
## 
##                      CRA      std r       se      Min      Max      Q25
## 50 - AS         67.97971 7.724836 8 2.722645 54.90411 80.00000 64.15507
## 50 + AS 1000ppm 74.44788 8.867789 8 2.722645 67.57679 93.42105 67.90344
## 50 + AS 600ppm  70.07971 7.774080 8 2.722645 58.90411 80.00000 64.90507
## Control         77.91153 6.201802 8 2.722645 69.82759 88.58075 74.00252
##                      Q50      Q75
## 50 - AS         68.15828 72.64969
## 50 + AS 1000ppm 71.35770 77.43724
## 50 + AS 600ppm  70.27954 75.58594
## Control         76.85915 79.83550
## 
## Alpha: 0.05 ; DF Error: 28 
## 
## Critical Range
##        2        3        4 
## 7.887189 8.287314 8.545998 
## 
## Means with the same letter are not significantly different.
## 
##                      CRA groups
## Control         77.91153      a
## 50 + AS 1000ppm 74.44788     ab
## 50 + AS 600ppm  70.07971     ab
## 50 - AS         67.97971      b
A.CRA.M2.DT
## $statistics
##    MSerror Df     Mean       CV
##   59.30236 28 72.60471 10.60648
## 
## $parameters
##     test      name.t ntr alpha
##   Duncan Tratamiento   4  0.05
## 
## $duncan
##      Table CriticalRange
## 2 2.896885      7.887189
## 3 3.043847      8.287314
## 4 3.138859      8.545998
## 
## $means
##                      CRA      std r       se      Min      Max      Q25
## 50 - AS         67.97971 7.724836 8 2.722645 54.90411 80.00000 64.15507
## 50 + AS 1000ppm 74.44788 8.867789 8 2.722645 67.57679 93.42105 67.90344
## 50 + AS 600ppm  70.07971 7.774080 8 2.722645 58.90411 80.00000 64.90507
## Control         77.91153 6.201802 8 2.722645 69.82759 88.58075 74.00252
##                      Q50      Q75
## 50 - AS         68.15828 72.64969
## 50 + AS 1000ppm 71.35770 77.43724
## 50 + AS 600ppm  70.27954 75.58594
## Control         76.85915 79.83550
## 
## $comparison
## NULL
## 
## $groups
##                      CRA groups
## Control         77.91153      a
## 50 + AS 1000ppm 74.44788     ab
## 50 + AS 600ppm  70.07971     ab
## 50 - AS         67.97971      b
## 
## attr(,"class")
## [1] "group"

Análisis estadístico - Muestreo 3

# Datos - CRA - Muestreo 3

datos.CRA.M3 <- data.frame(CRA_M3$`Factor riego`, CRA_M3$`Factor ácido ascórbico`, CRA_M3$Tratamiento, CRA_M3$`CRA (%)`)
colnames(datos.CRA.M3) <- c("F_riego", "F_AA", "Tratamiento", "CRA")
datos.CRA.M3
datos.CRA.M3$F_riego <- as.factor(datos.CRA.M3$F_riego)
datos.CRA.M3$F_AA <- as.factor(datos.CRA.M3$F_AA)
str(datos.CRA.M3)
## 'data.frame':    32 obs. of  4 variables:
##  $ F_riego    : Factor w/ 2 levels "0.5","1": 2 2 2 2 2 2 2 2 1 1 ...
##  $ F_AA       : Factor w/ 3 levels "0 ppm","1000 ppm",..: 1 1 1 1 1 1 1 1 1 1 ...
##  $ Tratamiento: chr  "Control" "Control" "Control" "Control" ...
##  $ CRA        : num  65.8 73.7 94.5 86.4 75.8 ...
# Anova - CRA - Muestreo 1
A.CRA.M3 <- aov(CRA ~ F_riego*F_AA, data = datos.CRA.M3)
summary(A.CRA.M3)
##             Df Sum Sq Mean Sq F value Pr(>F)  
## F_riego      1  539.1   539.1   4.980 0.0338 *
## F_AA         2  643.5   321.8   2.972 0.0675 .
## Residuals   28 3031.1   108.3                 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
  • Los dos tipos de riego, como factor independiente, tuvieron diferencias con una significancia del 95%.
# Prueba de normalidad de residuos
shapiro.test(A.CRA.M3$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  A.CRA.M3$residuals
## W = 0.9383, p-value = 0.06701
  • El hecho de que no sea significativo (p-value > 0.05), representa que los datos tienen una distribución normal.
TukeyHSD(A.CRA.M3)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = CRA ~ F_riego * F_AA, data = datos.CRA.M3)
## 
## $F_riego
##           diff       lwr      upr     p adj
## 1-0.5 9.478762 0.7779699 18.17955 0.0338272
## 
## $F_AA
##                      diff       lwr      upr     p adj
## 1000 ppm-0 ppm   1.255720 -9.891844 12.40328 0.9581431
## 600 ppm-0 ppm    9.686756 -1.460807 20.83432 0.0979293
## 600 ppm-1000 ppm 8.431037 -4.441061 21.30313 0.2538127
  • Los dos tipos de riego presenta diferencias significativas.
# Anova - CRA - Muestreo 3 - Comparación entre los tratamientos

A.CRA.M3.CT <- aov(CRA ~ Tratamiento, data=datos.CRA.M3)
summary(A.CRA.M3.CT)
##             Df Sum Sq Mean Sq F value Pr(>F)  
## Tratamiento  3   1183   394.2   3.642 0.0246 *
## Residuals   28   3031   108.3                 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Tukey_A.CRA.M3.CT <- TukeyHSD(A.CRA.M3.CT)
Tukey_A.CRA.M3.CT
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = CRA ~ Tratamiento, data = datos.CRA.M3)
## 
## $Tratamiento
##                                     diff         lwr      upr     p adj
## 50 + AS 1000ppm-50 - AS         3.991338 -10.2123245 18.19500 0.8684702
## 50 + AS 600ppm-50 - AS         12.422375  -1.7812879 26.62604 0.1027731
## Control-50 - AS                14.950000   0.7463371 29.15366 0.0362826
## 50 + AS 600ppm-50 + AS 1000ppm  8.431037  -5.7726264 22.63470 0.3837867
## Control-50 + AS 1000ppm        10.958662  -3.2450014 25.16232 0.1757293
## Control-50 + AS 600ppm          2.527625 -11.6760379 16.73129 0.9616045
  • Podemos observar que ninguno de los tratamientos tiene diferencias significativas con el control para el muestreo 1.
A.CRA.M3.DT <- duncan.test(A.CRA.M3.CT, 'Tratamiento', console = T)
## 
## Study: A.CRA.M3.CT ~ "Tratamiento"
## 
## Duncan's new multiple range test
## for CRA 
## 
## Mean Square Error:  108.2521 
## 
## Tratamiento,  means
## 
##                      CRA       std r      se      Min      Max      Q25
## 50 - AS         62.98490 10.877915 8 3.67852 53.74570 77.99320 55.29269
## 50 + AS 1000ppm 66.97624 13.226623 8 3.67852 51.17057 85.11628 56.06290
## 50 + AS 600ppm  75.40728  7.930765 8 3.67852 63.74570 86.37413 71.80557
## Control         77.93490  8.765771 8 3.67852 65.76000 94.49074 73.85449
##                      Q50      Q75
## 50 - AS         56.21180 74.76186
## 50 + AS 1000ppm 64.92068 79.58764
## 50 + AS 600ppm  75.63183 79.47509
## Control         75.66183 80.01369
## 
## Alpha: 0.05 ; DF Error: 28 
## 
## Critical Range
##        2        3        4 
## 10.65625 11.19685 11.54636 
## 
## Means with the same letter are not significantly different.
## 
##                      CRA groups
## Control         77.93490      a
## 50 + AS 600ppm  75.40728      a
## 50 + AS 1000ppm 66.97624     ab
## 50 - AS         62.98490      b
A.CRA.M3.DT
## $statistics
##    MSerror Df     Mean       CV
##   108.2521 28 70.82583 14.69016
## 
## $parameters
##     test      name.t ntr alpha
##   Duncan Tratamiento   4  0.05
## 
## $duncan
##      Table CriticalRange
## 2 2.896885      10.65625
## 3 3.043847      11.19685
## 4 3.138859      11.54636
## 
## $means
##                      CRA       std r      se      Min      Max      Q25
## 50 - AS         62.98490 10.877915 8 3.67852 53.74570 77.99320 55.29269
## 50 + AS 1000ppm 66.97624 13.226623 8 3.67852 51.17057 85.11628 56.06290
## 50 + AS 600ppm  75.40728  7.930765 8 3.67852 63.74570 86.37413 71.80557
## Control         77.93490  8.765771 8 3.67852 65.76000 94.49074 73.85449
##                      Q50      Q75
## 50 - AS         56.21180 74.76186
## 50 + AS 1000ppm 64.92068 79.58764
## 50 + AS 600ppm  75.63183 79.47509
## Control         75.66183 80.01369
## 
## $comparison
## NULL
## 
## $groups
##                      CRA groups
## Control         77.93490      a
## 50 + AS 600ppm  75.40728      a
## 50 + AS 1000ppm 66.97624     ab
## 50 - AS         62.98490      b
## 
## attr(,"class")
## [1] "group"

Análisis estadístico - Muestreo 4

# Datos - CRA - Muestreo 4

datos.CRA.M4 <- data.frame(CRA_M4$`Factor riego`, CRA_M4$`Factor ácido ascórbico`, CRA_M4$Tratamiento, CRA_M4$`CRA (%)`)
colnames(datos.CRA.M4) <- c("F_riego", "F_AA", "Tratamiento", "CRA")
datos.CRA.M4
datos.CRA.M4$F_riego <- as.factor(datos.CRA.M4$F_riego)
datos.CRA.M4$F_AA <- as.factor(datos.CRA.M4$F_AA)
str(datos.CRA.M4)
## 'data.frame':    32 obs. of  4 variables:
##  $ F_riego    : Factor w/ 2 levels "0.5","1": 2 2 2 2 2 2 2 2 1 1 ...
##  $ F_AA       : Factor w/ 3 levels "0 ppm","1000 ppm",..: 1 1 1 1 1 1 1 1 1 1 ...
##  $ Tratamiento: chr  "Control" "Control" "Control" "Control" ...
##  $ CRA        : num  80.8 70.9 81.4 80.3 75.3 ...
# Anova - CRA - Muestreo 4
A.CRA.M4 <- aov(CRA ~ F_riego*F_AA, data = datos.CRA.M4)
summary(A.CRA.M4)
##             Df Sum Sq Mean Sq F value Pr(>F)  
## F_riego      1  350.3   350.3   5.497 0.0264 *
## F_AA         2  139.2    69.6   1.092 0.3493  
## Residuals   28 1784.5    63.7                 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
  • Los dos tipos de riego, como factor independiente, tuvieron diferencias con una significancia del 95%.
# Prueba de normalidad de residuos
shapiro.test(A.CRA.M4$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  A.CRA.M4$residuals
## W = 0.97169, p-value = 0.5474
  • El hecho de que no sea significativo (p-value > 0.05), representa que los datos tienen una distribución normal.
TukeyHSD(A.CRA.M4)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = CRA ~ F_riego * F_AA, data = datos.CRA.M4)
## 
## $F_riego
##           diff       lwr     upr     p adj
## 1-0.5 7.641296 0.9652879 14.3173 0.0263693
## 
## $F_AA
##                        diff        lwr       upr     p adj
## 1000 ppm-0 ppm    3.6066695  -4.946716 12.160055 0.5563734
## 600 ppm-0 ppm     3.1886661  -5.364719 11.742051 0.6309138
## 600 ppm-1000 ppm -0.4180034 -10.294602  9.458595 0.9939736
  • Los dos tipos de riego presenta diferencias significativas.
# Anova - CRA - Muestreo 4 - Comparación entre los tratamientos

A.CRA.M4.CT <- aov(CRA ~ Tratamiento, data=datos.CRA.M4)
summary(A.CRA.M4.CT)
##             Df Sum Sq Mean Sq F value Pr(>F)  
## Tratamiento  3  489.6  163.19   2.561  0.075 .
## Residuals   28 1784.5   63.73                 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Tukey_A.CRA.M4.CT <- TukeyHSD(A.CRA.M4.CT)
Tukey_A.CRA.M4.CT
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = CRA ~ Tratamiento, data = datos.CRA.M4)
## 
## $Tratamiento
##                                      diff         lwr      upr     p adj
## 50 + AS 1000ppm-50 - AS         5.3055034  -5.5927885 16.20380 0.5527294
## 50 + AS 600ppm-50 - AS          4.8875000  -6.0107919 15.78579 0.6169473
## Control-50 - AS                11.0389641   0.1406722 21.93726 0.0462560
## 50 + AS 600ppm-50 + AS 1000ppm -0.4180034 -11.3162952 10.48029 0.9995785
## Control-50 + AS 1000ppm         5.7334607  -5.1648311 16.63175 0.4881159
## Control-50 + AS 600ppm          6.1514641  -4.7468278 17.04976 0.4275029
  • Podemos observar que ninguno de los tratamientos tiene diferencias significativas con el control para el muestreo 1.
A.CRA.M4.DT <- duncan.test(A.CRA.M4.CT, 'Tratamiento', console = T)
## 
## Study: A.CRA.M4.CT ~ "Tratamiento"
## 
## Duncan's new multiple range test
## for CRA 
## 
## Mean Square Error:  63.73125 
## 
## Tratamiento,  means
## 
##                      CRA       std r       se      Min      Max      Q25
## 50 - AS         66.89244 10.463300 8 2.822482 52.00000 79.89798 60.66041
## 50 + AS 1000ppm 72.19795 10.181476 8 2.822482 58.30450 87.55869 65.55365
## 50 + AS 600ppm  71.77994  5.244714 8 2.822482 63.35740 79.79798 69.27785
## Control         77.93141  3.778212 8 2.822482 70.94972 81.38686 75.16088
##                      Q50      Q75
## 50 - AS         68.62023 73.76648
## 50 + AS 1000ppm 70.23930 77.04855
## 50 + AS 600ppm  72.19792 73.72169
## Control         79.93398 80.46572
## 
## Alpha: 0.05 ; DF Error: 28 
## 
## Critical Range
##        2        3        4 
## 8.176407 8.591204 8.859373 
## 
## Means with the same letter are not significantly different.
## 
##                      CRA groups
## Control         77.93141      a
## 50 + AS 1000ppm 72.19795     ab
## 50 + AS 600ppm  71.77994     ab
## 50 - AS         66.89244      b
A.CRA.M4.DT
## $statistics
##    MSerror Df     Mean       CV
##   63.73125 28 72.20043 11.05698
## 
## $parameters
##     test      name.t ntr alpha
##   Duncan Tratamiento   4  0.05
## 
## $duncan
##      Table CriticalRange
## 2 2.896885      8.176407
## 3 3.043847      8.591204
## 4 3.138859      8.859373
## 
## $means
##                      CRA       std r       se      Min      Max      Q25
## 50 - AS         66.89244 10.463300 8 2.822482 52.00000 79.89798 60.66041
## 50 + AS 1000ppm 72.19795 10.181476 8 2.822482 58.30450 87.55869 65.55365
## 50 + AS 600ppm  71.77994  5.244714 8 2.822482 63.35740 79.79798 69.27785
## Control         77.93141  3.778212 8 2.822482 70.94972 81.38686 75.16088
##                      Q50      Q75
## 50 - AS         68.62023 73.76648
## 50 + AS 1000ppm 70.23930 77.04855
## 50 + AS 600ppm  72.19792 73.72169
## Control         79.93398 80.46572
## 
## $comparison
## NULL
## 
## $groups
##                      CRA groups
## Control         77.93141      a
## 50 + AS 1000ppm 72.19795     ab
## 50 + AS 600ppm  71.77994     ab
## 50 - AS         66.89244      b
## 
## attr(,"class")
## [1] "group"

Análisis descriptivo - Contenido relativo de agua

# Datos - Gráfico - Contenido relativo de agua

Tratamientos_2 <- c(
  rep("Control", 8),
  rep("50 - AS", 8),
  rep("50 + AS 600ppm", 8),
  rep("50 + AS 1000ppm", 8)
)

Datos.G.CRA <- data.frame(factor(Tratamientos_2, ordered = TRUE, levels = c("Control", "50 - AS", "50 + AS 600ppm", "50 + AS 1000ppm")), CRA_M1$`CRA (%)`, CRA_M2$`CRA (%)`, CRA_M3$`CRA (%)`, CRA_M4$`CRA (%)`)
colnames(Datos.G.CRA) <- c("Tratamientos", "31", "38","45", "52")
Datos.G.CRA
# Unificar la variable respuesta en una sola columna
df.long.CRA = gather(Datos.G.CRA, dds, CRA, 2:5)
df.long.CRA
# Diferencias significativas con el control
#          M1  M2  M3  M4
DS.CRA <- c("a", "a", "a", "a",  #T1
           "b*", "b*", "b*", "b*", #T2
           "ab", "ab*", "a", "ab*",  #T3
           "b*", "ab", "ab*", "ab*") #T4

# Media y desviación estandar de la media de los tratamientos en los diferentes muestreos.
df.sumzd.CRA = group_by(df.long.CRA, Tratamientos, dds, ) %>% summarise(mean = mean(CRA), sd = sd(CRA))
## `summarise()` has grouped output by 'Tratamientos'. You can override using the
## `.groups` argument.
# Con diferencias significativas de los tratamientos con su control
df.sumzd.CRA.ds <- data.frame(df.sumzd.CRA, DS.CRA)
df.sumzd.CRA.ds
G.CRA = ggplot(df.sumzd.CRA, aes(x=dds, y=mean, fill=Tratamientos, xmax = 4.7))+
  geom_bar(stat = "identity", position = "dodge", color = "black", alpha = 0.5)+
  geom_errorbar(aes(ymin=mean-sd, ymax=mean+sd), width = 0.25, size=0.5, position = position_dodge(0.9), alpha = 0.5)+
  scale_fill_manual(values=c("red", "yellow", "blue", "green")) +
  theme_minimal()+
  theme(axis.text.x = element_text(size=15),
        axis.text.y = element_text(size=15))+
  ggtitle("Contenido relativo de agua \nen los diferentes muestreos") + theme(plot.title = element_text(family = "Times New Roman",
size = rel(2),
vjust = 0.5, 
hjust = 0.5))+
  labs(x = "Días después de siembra", y = "% promedio")+
  theme(axis.title.x = element_text(family = "Times New Roman", size = rel(1.5)), axis.title.y = element_text(family = "Times New Roman", size = rel(1.5)))+
  theme(legend.title = element_text(family = "Times New Roman", size = rel(1.5)))+
  geom_text(aes(x=dds, y= mean+1.2, label=DS.CRA),
            position = position_dodge(width = 1), size = 5)+
  geom_hline(yintercept = 77.93, linetype = "dashed", color = "black", size = 1)+
  geom_hline(yintercept = 74.03, linetype = "dashed", color = "black", size = 1)+
  geom_hline(yintercept = 66.24, linetype = "dashed", color = "black", size = 1)+
  geom_hline(yintercept = 62.34, linetype = "dashed", color = "black", size = 1)+
  geom_text(aes(x = 4.65, y = 80, label="100%"), size = 5)+
  geom_text(aes(x = 4.65, y = 76, label="95%"), size = 5)+
  geom_text(aes(x = 4.65, y = 68, label="85%"), size = 5)+
  geom_text(aes(x = 4.65, y = 64, label="70%"), size = 5)+
  coord_cartesian(xlim = c(1, 4.3), ylim = c(61, 85))
G.CRA

Peso fresco de la parte aérea

Análisis estadístico - Muestreo 1

# Datos - Peso fresco de la parte aérea - Muestreo 1

datos.PFPA.M1 <- data.frame(Var_M1$`Factor riego`, Var_M1$`Factor ácido ascórbico`, Var_M1$Tratamiento, Var_M1$`Peso fresco de parte aérea completo`)
colnames(datos.PFPA.M1) <- c("F_riego", "F_AA", "Tratamiento", "PFPA")
datos.PFPA.M1
datos.PFPA.M1$F_riego <- as.factor(datos.PFPA.M1$F_riego)
datos.PFPA.M1$F_AA <- as.factor(datos.PFPA.M1$F_AA)
str(datos.PFPA.M1)
## 'data.frame':    16 obs. of  4 variables:
##  $ F_riego    : Factor w/ 2 levels "0.5","1": 2 2 2 2 1 1 1 1 1 1 ...
##  $ F_AA       : Factor w/ 3 levels "0 ppm","1000 ppm",..: 1 1 1 1 1 1 1 1 3 3 ...
##  $ Tratamiento: chr  "Control" "Control" "Control" "Control" ...
##  $ PFPA       : num  3.85 5.02 3.15 4.29 2.26 ...
# Anova - Peso fresco de la parte aérea - Muestreo 1
A.PFPA.M1 <- aov(PFPA ~ F_riego*F_AA, data = datos.PFPA.M1)
summary(A.PFPA.M1)
##             Df Sum Sq Mean Sq F value  Pr(>F)   
## F_riego      1  7.762   7.762   15.71 0.00188 **
## F_AA         2  0.128   0.064    0.13 0.87961   
## Residuals   12  5.931   0.494                   
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
  • Los dos tipos de riego, como factor independiente, tuvieron diferencias con una significancia del 99%.
# Prueba de normalidad de residuos
shapiro.test(A.PFPA.M1$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  A.PFPA.M1$residuals
## W = 0.97928, p-value = 0.9577
  • El hecho de que no sea significativo (p-value > 0.05), representa que los datos tienen una distribución normal.
TukeyHSD(A.PFPA.M1)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = PFPA ~ F_riego * F_AA, data = datos.PFPA.M1)
## 
## $F_riego
##           diff       lwr      upr     p adj
## 1-0.5 1.608567 0.7242183 2.492915 0.0018828
## 
## $F_AA
##                         diff       lwr      upr     p adj
## 1000 ppm-0 ppm   -0.09346667 -1.241999 1.055066 0.9744048
## 600 ppm-0 ppm    -0.18086667 -1.329399 0.967666 0.9080182
## 600 ppm-1000 ppm -0.08740000 -1.413611 1.238811 0.9831268
  • Los dos tipos de riego presenta diferencias significativas.
# Anova - PFPA - Muestreo 1 - Comparación entre los tratamientos

A.PFPA.M1.CT <- aov(PFPA ~ Tratamiento, data=datos.PFPA.M1)
summary(A.PFPA.M1.CT)
##             Df Sum Sq Mean Sq F value Pr(>F)  
## Tratamiento  3  7.891  2.6302   5.322 0.0145 *
## Residuals   12  5.931  0.4942                 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Tukey_A.PFPA.M1.CT <- TukeyHSD(A.PFPA.M1.CT)
Tukey_A.PFPA.M1.CT
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = PFPA ~ Tratamiento, data = datos.PFPA.M1)
## 
## $Tratamiento
##                                    diff          lwr      upr     p adj
## 50 + AS 1000ppm-50 - AS        -0.16205 -1.637908858 1.313809 0.9874340
## 50 + AS 600ppm-50 - AS         -0.24945 -1.725308858 1.226409 0.9570973
## Control-50 - AS                 1.47140 -0.004458858 2.947259 0.0507800
## 50 + AS 600ppm-50 + AS 1000ppm -0.08740 -1.563258858 1.388459 0.9979585
## Control-50 + AS 1000ppm         1.63345  0.157591142 3.109309 0.0288036
## Control-50 + AS 600ppm          1.72085  0.244991142 3.196709 0.0211685
  • Podemos observar que todos los tratamientos tienen diferencias signifciativas con respecto a su control, sin embargo, para el caso del tratamiento amarillo (50 - AS), este presenta un p-valor de 5.07%, que aunque este por encima, vale la pena tenerlo en cuenta.
A.PFPA.M1.DT <- duncan.test(A.PFPA.M1.CT, 'Tratamiento', console = T)
## 
## Study: A.PFPA.M1.CT ~ "Tratamiento"
## 
## Duncan's new multiple range test
## for PFPA 
## 
## Mean Square Error:  0.494229 
## 
## Tratamiento,  means
## 
##                    PFPA       std r        se    Min    Max      Q25     Q50
## 50 - AS         2.60620 0.4561895 4 0.3515071 2.2592 3.2764 2.371625 2.44460
## 50 + AS 1000ppm 2.44415 0.9873562 4 0.3515071 1.3531 3.4981 1.766800 2.46270
## 50 + AS 600ppm  2.35675 0.4223427 4 0.3515071 1.7529 2.6585 2.221575 2.50780
## Control         4.07760 0.7845771 4 0.3515071 3.1523 5.0226 3.673475 4.06775
##                      Q75
## 50 - AS         2.679175
## 50 + AS 1000ppm 3.140050
## 50 + AS 600ppm  2.642975
## Control         4.471875
## 
## Alpha: 0.05 ; DF Error: 12 
## 
## Critical Range
##        2        3        4 
## 1.083101 1.133696 1.164351 
## 
## Means with the same letter are not significantly different.
## 
##                    PFPA groups
## Control         4.07760      a
## 50 - AS         2.60620      b
## 50 + AS 1000ppm 2.44415      b
## 50 + AS 600ppm  2.35675      b
A.PFPA.M1.DT
## $statistics
##    MSerror Df     Mean       CV
##   0.494229 12 2.871175 24.48524
## 
## $parameters
##     test      name.t ntr alpha
##   Duncan Tratamiento   4  0.05
## 
## $duncan
##      Table CriticalRange
## 2 3.081307      1.083101
## 3 3.225244      1.133696
## 4 3.312453      1.164351
## 
## $means
##                    PFPA       std r        se    Min    Max      Q25     Q50
## 50 - AS         2.60620 0.4561895 4 0.3515071 2.2592 3.2764 2.371625 2.44460
## 50 + AS 1000ppm 2.44415 0.9873562 4 0.3515071 1.3531 3.4981 1.766800 2.46270
## 50 + AS 600ppm  2.35675 0.4223427 4 0.3515071 1.7529 2.6585 2.221575 2.50780
## Control         4.07760 0.7845771 4 0.3515071 3.1523 5.0226 3.673475 4.06775
##                      Q75
## 50 - AS         2.679175
## 50 + AS 1000ppm 3.140050
## 50 + AS 600ppm  2.642975
## Control         4.471875
## 
## $comparison
## NULL
## 
## $groups
##                    PFPA groups
## Control         4.07760      a
## 50 - AS         2.60620      b
## 50 + AS 1000ppm 2.44415      b
## 50 + AS 600ppm  2.35675      b
## 
## attr(,"class")
## [1] "group"

Análisis estadístico - Muestreo 2

# Datos - Peso fresco de la parte aérea - Muestreo 2

datos.PFPA.M2 <- data.frame(Var_M2$`Factor riego`, Var_M2$`Factor ácido ascórbico`, Var_M2$Tratamiento, Var_M2$`Peso fresco de parte aérea completo`)
colnames(datos.PFPA.M2) <- c("F_riego", "F_AA", "Tratamiento", "PFPA")
datos.PFPA.M2
datos.PFPA.M2$F_riego <- as.factor(datos.PFPA.M2$F_riego)
datos.PFPA.M2$F_AA <- as.factor(datos.PFPA.M2$F_AA)
str(datos.PFPA.M2)
## 'data.frame':    16 obs. of  4 variables:
##  $ F_riego    : Factor w/ 2 levels "0.5","1": 2 2 2 2 1 1 1 1 1 1 ...
##  $ F_AA       : Factor w/ 3 levels "0 ppm","1000 ppm",..: 1 1 1 1 1 1 1 1 3 3 ...
##  $ Tratamiento: chr  "Control" "Control" "Control" "Control" ...
##  $ PFPA       : num  5.22 6.85 7.98 8.59 4.23 ...
# Anova - Peso fresco de la parte aérea - Muestreo 2
A.PFPA.M2 <- aov(PFPA ~ F_riego*F_AA, data = datos.PFPA.M2)
summary(A.PFPA.M2)
##             Df Sum Sq Mean Sq F value   Pr(>F)    
## F_riego      1  32.13   32.13  31.268 0.000118 ***
## F_AA         2   0.17    0.09   0.083 0.921018    
## Residuals   12  12.33    1.03                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
  • Los dos tipos de riego, como factor independiente, tuvieron diferencias con una significancia del 99.9%.
# Prueba de normalidad de residuos
shapiro.test(A.PFPA.M2$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  A.PFPA.M2$residuals
## W = 0.93394, p-value = 0.2812
  • El hecho de que no sea significativo (p-value > 0.05), representa que los datos tienen una distribución normal.
TukeyHSD(A.PFPA.M2)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = PFPA ~ F_riego * F_AA, data = datos.PFPA.M2)
## 
## $F_riego
##           diff      lwr      upr     p adj
## 1-0.5 3.272583 1.997436 4.547731 0.0001177
## 
## $F_AA
##                         diff       lwr      upr     p adj
## 1000 ppm-0 ppm    0.01229167 -1.643785 1.668368 0.9997839
## 600 ppm-0 ppm    -0.21845833 -1.874535 1.437618 0.9343751
## 600 ppm-1000 ppm -0.23075000 -2.143023 1.681523 0.9447330
  • Los dos tipos de riego presenta diferencias significativas.
# Anova - PFPA - Muestreo 2 - Comparación entre los tratamientos

A.PFPA.M2.CT <- aov(PFPA ~ Tratamiento, data=datos.PFPA.M2)
summary(A.PFPA.M2.CT)
##             Df Sum Sq Mean Sq F value  Pr(>F)   
## Tratamiento  3  32.30  10.767   10.48 0.00114 **
## Residuals   12  12.33   1.028                   
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Tukey_A.PFPA.M2.CT <- TukeyHSD(A.PFPA.M2.CT)
Tukey_A.PFPA.M2.CT
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = PFPA ~ Tratamiento, data = datos.PFPA.M2)
## 
## $Tratamiento
##                                    diff      lwr     upr     p adj
## 50 + AS 1000ppm-50 - AS        -0.03925 -2.16730 2.08880 0.9999375
## 50 + AS 600ppm-50 - AS         -0.27000 -2.39805 1.85805 0.9809263
## Control-50 - AS                 3.16950  1.04145 5.29755 0.0039973
## 50 + AS 600ppm-50 + AS 1000ppm -0.23075 -2.35880 1.89730 0.9878831
## Control-50 + AS 1000ppm         3.20875  1.08070 5.33680 0.0036419
## Control-50 + AS 600ppm          3.43950  1.31145 5.56755 0.0021198
  • Podemos observar que todos los tratamientos tienen diferencias signifciativas con respecto a su control.
A.PFPA.M2.DT <- duncan.test(A.PFPA.M2.CT, 'Tratamiento', console = T)
## 
## Study: A.PFPA.M2.CT ~ "Tratamiento"
## 
## Duncan's new multiple range test
## for PFPA 
## 
## Mean Square Error:  1.027548 
## 
## Tratamiento,  means
## 
##                    PFPA       std r        se   Min   Max    Q25    Q50     Q75
## 50 - AS         3.99100 0.9177901 4 0.5068403 2.641 4.667 3.8305 4.3280 4.48850
## 50 + AS 1000ppm 3.95175 0.9023042 4 0.5068403 2.649 4.680 3.7230 4.2390 4.46775
## 50 + AS 600ppm  3.72100 0.5142963 4 0.5068403 3.201 4.390 3.4005 3.6465 3.96700
## Control         7.16050 1.4795951 4 0.5068403 5.220 8.587 6.4455 7.4175 8.13250
## 
## Alpha: 0.05 ; DF Error: 12 
## 
## Critical Range
##        2        3        4 
## 1.561730 1.634684 1.678885 
## 
## Means with the same letter are not significantly different.
## 
##                    PFPA groups
## Control         7.16050      a
## 50 - AS         3.99100      b
## 50 + AS 1000ppm 3.95175      b
## 50 + AS 600ppm  3.72100      b
A.PFPA.M2.DT
## $statistics
##    MSerror Df     Mean       CV
##   1.027548 12 4.706062 21.53989
## 
## $parameters
##     test      name.t ntr alpha
##   Duncan Tratamiento   4  0.05
## 
## $duncan
##      Table CriticalRange
## 2 3.081307      1.561730
## 3 3.225244      1.634684
## 4 3.312453      1.678885
## 
## $means
##                    PFPA       std r        se   Min   Max    Q25    Q50     Q75
## 50 - AS         3.99100 0.9177901 4 0.5068403 2.641 4.667 3.8305 4.3280 4.48850
## 50 + AS 1000ppm 3.95175 0.9023042 4 0.5068403 2.649 4.680 3.7230 4.2390 4.46775
## 50 + AS 600ppm  3.72100 0.5142963 4 0.5068403 3.201 4.390 3.4005 3.6465 3.96700
## Control         7.16050 1.4795951 4 0.5068403 5.220 8.587 6.4455 7.4175 8.13250
## 
## $comparison
## NULL
## 
## $groups
##                    PFPA groups
## Control         7.16050      a
## 50 - AS         3.99100      b
## 50 + AS 1000ppm 3.95175      b
## 50 + AS 600ppm  3.72100      b
## 
## attr(,"class")
## [1] "group"

Análisis estadístico - Muestreo 3

# Datos - Peso fresco de la parte aérea - Muestreo 3

datos.PFPA.M3 <- data.frame(Var_M3$`Factor riego`, Var_M3$`Factor ácido ascórbico`, Var_M3$Tratamiento, Var_M3$`Peso fresco de parte aérea completo`)
colnames(datos.PFPA.M3) <- c("F_riego", "F_AA", "Tratamiento", "PFPA")
datos.PFPA.M3
datos.PFPA.M3$F_riego <- as.factor(datos.PFPA.M3$F_riego)
datos.PFPA.M3$F_AA <- as.factor(datos.PFPA.M3$F_AA)
str(datos.PFPA.M3)
## 'data.frame':    16 obs. of  4 variables:
##  $ F_riego    : Factor w/ 2 levels "0.5","1": 2 2 2 2 1 1 1 1 1 1 ...
##  $ F_AA       : Factor w/ 3 levels "0 ppm","1000 ppm",..: 1 1 1 1 1 1 1 1 3 3 ...
##  $ Tratamiento: chr  "Control" "Control" "Control" "Control" ...
##  $ PFPA       : num  8.2 9.31 11.59 8.04 2.9 ...
# Anova - Peso fresco de la parte aérea - Muestreo 3
A.PFPA.M3 <- aov(PFPA ~ F_riego*F_AA, data = datos.PFPA.M3)
summary(A.PFPA.M3)
##             Df Sum Sq Mean Sq F value   Pr(>F)    
## F_riego      1 116.83  116.83 131.298 8.08e-08 ***
## F_AA         2   0.30    0.15   0.166    0.849    
## Residuals   12  10.68    0.89                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
  • Los dos tipos de riego, como factor independiente, tuvieron diferencias con una significancia del 99.9%.
# Prueba de normalidad de residuos
shapiro.test(A.PFPA.M3$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  A.PFPA.M3$residuals
## W = 0.86216, p-value = 0.02067
  • Los datos no tienen una distribución normal, en este caso hay que aplicar otra prueba que soporte la distribución de los datos de esta variable, sin embargo, en este caso no se realizará, puesto a que ya sabiamos, desde la toma de los datos, que esta varibale no iba a dar diferencias significativas.
TukeyHSD(A.PFPA.M3)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = PFPA ~ F_riego * F_AA, data = datos.PFPA.M3)
## 
## $F_riego
##          diff      lwr      upr p adj
## 1-0.5 6.24055 5.053926 7.427174 1e-07
## 
## $F_AA
##                      diff       lwr      upr     p adj
## 1000 ppm-0 ppm   -0.14625 -1.687358 1.394858 0.9653828
## 600 ppm-0 ppm     0.23125 -1.309858 1.772358 0.9160560
## 600 ppm-1000 ppm  0.37750 -1.402018 2.157018 0.8403720
  • Los dos tipos de riego presenta diferencias significativas.
# Anova - PFPA - Muestreo 3 - Comparación entre los tratamientos

A.PFPA.M3.CT <- aov(PFPA ~ Tratamiento, data=datos.PFPA.M3)
summary(A.PFPA.M3.CT)
##             Df Sum Sq Mean Sq F value   Pr(>F)    
## Tratamiento  3 117.13   39.04   43.88 9.61e-07 ***
## Residuals   12  10.68    0.89                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Tukey_A.PFPA.M3.CT <- TukeyHSD(A.PFPA.M3.CT)
Tukey_A.PFPA.M3.CT
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = PFPA ~ Tratamiento, data = datos.PFPA.M3)
## 
## $Tratamiento
##                                    diff       lwr      upr     p adj
## 50 + AS 1000ppm-50 - AS        -0.12500 -2.105316 1.855316 0.9975327
## 50 + AS 600ppm-50 - AS          0.25250 -1.727816 2.232816 0.9806541
## Control-50 - AS                 6.28305  4.302734 8.263366 0.0000036
## 50 + AS 600ppm-50 + AS 1000ppm  0.37750 -1.602816 2.357816 0.9403034
## Control-50 + AS 1000ppm         6.40805  4.427734 8.388366 0.0000029
## Control-50 + AS 600ppm          6.03055  4.050234 8.010866 0.0000055
  • Podemos observar que todos los tratamientos tienen diferencias signifciativas con respecto a su control.
A.PFPA.M3.DT <- duncan.test(A.PFPA.M3.CT, 'Tratamiento', console = T)
## 
## Study: A.PFPA.M3.CT ~ "Tratamiento"
## 
## Duncan's new multiple range test
## for PFPA 
## 
## Mean Square Error:  0.8898312 
## 
## Tratamiento,  means
## 
##                     PFPA       std r        se    Min     Max     Q25    Q50
## 50 - AS         3.001075 0.2689921 4 0.4716543 2.7498  3.3791 2.86170 2.9377
## 50 + AS 1000ppm 2.876075 0.2030149 4 0.4716543 2.7498  3.1791 2.76975 2.7877
## 50 + AS 600ppm  3.253575 0.8709956 4 0.4716543 2.1129  4.2142 2.93565 3.3436
## Control         9.284125 1.6392436 4 0.4716543 8.0370 11.5909 8.15625 8.7543
##                      Q75
## 50 - AS         3.077075
## 50 + AS 1000ppm 2.894025
## 50 + AS 600ppm  3.661525
## Control         9.882175
## 
## Alpha: 0.05 ; DF Error: 12 
## 
## Critical Range
##        2        3        4 
## 1.453312 1.521200 1.562333 
## 
## Means with the same letter are not significantly different.
## 
##                     PFPA groups
## Control         9.284125      a
## 50 + AS 600ppm  3.253575      b
## 50 - AS         3.001075      b
## 50 + AS 1000ppm 2.876075      b
A.PFPA.M3.DT
## $statistics
##     MSerror Df     Mean       CV
##   0.8898312 12 4.603713 20.49017
## 
## $parameters
##     test      name.t ntr alpha
##   Duncan Tratamiento   4  0.05
## 
## $duncan
##      Table CriticalRange
## 2 3.081307      1.453312
## 3 3.225244      1.521200
## 4 3.312453      1.562333
## 
## $means
##                     PFPA       std r        se    Min     Max     Q25    Q50
## 50 - AS         3.001075 0.2689921 4 0.4716543 2.7498  3.3791 2.86170 2.9377
## 50 + AS 1000ppm 2.876075 0.2030149 4 0.4716543 2.7498  3.1791 2.76975 2.7877
## 50 + AS 600ppm  3.253575 0.8709956 4 0.4716543 2.1129  4.2142 2.93565 3.3436
## Control         9.284125 1.6392436 4 0.4716543 8.0370 11.5909 8.15625 8.7543
##                      Q75
## 50 - AS         3.077075
## 50 + AS 1000ppm 2.894025
## 50 + AS 600ppm  3.661525
## Control         9.882175
## 
## $comparison
## NULL
## 
## $groups
##                     PFPA groups
## Control         9.284125      a
## 50 + AS 600ppm  3.253575      b
## 50 - AS         3.001075      b
## 50 + AS 1000ppm 2.876075      b
## 
## attr(,"class")
## [1] "group"

Análisis estadístico - Muestreo 4

# Datos - Peso fresco de la parte aérea - Muestreo 4

datos.PFPA.M4 <- data.frame(Var_M4$`Factor riego`, Var_M4$`Factor ácido ascórbico`, Var_M4$Tratamiento, Var_M4$`Peso fresco de parte aérea completo`)
colnames(datos.PFPA.M4) <- c("F_riego", "F_AA", "Tratamiento", "PFPA")
datos.PFPA.M4
datos.PFPA.M4$F_riego <- as.factor(datos.PFPA.M4$F_riego)
datos.PFPA.M4$F_AA <- as.factor(datos.PFPA.M4$F_AA)
str(datos.PFPA.M4)
## 'data.frame':    16 obs. of  4 variables:
##  $ F_riego    : Factor w/ 2 levels "0.5","1": 2 2 2 2 1 1 1 1 1 1 ...
##  $ F_AA       : Factor w/ 3 levels "0 ppm","1000 ppm",..: 1 1 1 1 1 1 1 1 3 3 ...
##  $ Tratamiento: chr  "Control" "Control" "Control" "Control" ...
##  $ PFPA       : num  11.87 12.21 11.87 9.73 2.74 ...
# Anova - Peso fresco de la parte aérea - Muestreo 4
A.PFPA.M4 <- aov(PFPA ~ F_riego*F_AA, data = datos.PFPA.M4)
summary(A.PFPA.M4)
##             Df Sum Sq Mean Sq F value   Pr(>F)    
## F_riego      1 180.55  180.55 353.653 2.86e-10 ***
## F_AA         2   4.46    2.23   4.367   0.0376 *  
## Residuals   12   6.13    0.51                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
  • Ambos facotores tuvieron diferencias significativas entre si. Los dos tipos de riego, como factor independiente, tuvieron diferencias con una significancia del 99.9%, por otra parte, el factor concentración de ácido ascórbico tuvo una diferencia significativa del 95%.
# Prueba de normalidad de residuos
shapiro.test(A.PFPA.M4$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  A.PFPA.M4$residuals
## W = 0.90233, p-value = 0.08759
  • El hecho de que no sea significativo (p-value > 0.05), representa que los datos tienen una distribución normal.
TukeyHSD(A.PFPA.M4)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = PFPA ~ F_riego * F_AA, data = datos.PFPA.M4)
## 
## $F_riego
##          diff      lwr      upr p adj
## 1-0.5 7.75775 6.858941 8.656559     0
## 
## $F_AA
##                       diff        lwr      upr     p adj
## 1000 ppm-0 ppm   0.6200375 -0.5472754 1.787350 0.3634057
## 600 ppm-0 ppm    1.0359125 -0.1314004 2.203225 0.0841462
## 600 ppm-1000 ppm 0.4158750 -0.9320219 1.763772 0.6963960
  • Los dos tipos de riego son completamente distintos.
# Anova - PFPA - Muestreo 4 - Comparación entre los tratamientos

A.PFPA.M4.CT <- aov(PFPA ~ Tratamiento, data=datos.PFPA.M4)
summary(A.PFPA.M4.CT)
##             Df Sum Sq Mean Sq F value   Pr(>F)    
## Tratamiento  3 185.01   61.67   120.8 3.14e-09 ***
## Residuals   12   6.13    0.51                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Tukey_A.PFPA.M4.CT <- TukeyHSD(A.PFPA.M4.CT)
Tukey_A.PFPA.M4.CT
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = PFPA ~ Tratamiento, data = datos.PFPA.M4)
## 
## $Tratamiento
##                                    diff         lwr       upr     p adj
## 50 + AS 1000ppm-50 - AS        1.034025 -0.46596639  2.534016 0.2251381
## 50 + AS 600ppm-50 - AS         1.449900 -0.05009139  2.949891 0.0592994
## Control-50 - AS                8.585725  7.08573361 10.085716 0.0000000
## 50 + AS 600ppm-50 + AS 1000ppm 0.415875 -1.08411639  1.915866 0.8425046
## Control-50 + AS 1000ppm        7.551700  6.05170861  9.051691 0.0000000
## Control-50 + AS 600ppm         7.135825  5.63583361  8.635816 0.0000000
  • Podemos observar que todos los tratamientos tienen diferencias signifciativas con respecto a su control.
A.PFPA.M4.DT <- duncan.test(A.PFPA.M4.CT, 'Tratamiento', console = T)
## 
## Study: A.PFPA.M4.CT ~ "Tratamiento"
## 
## Duncan's new multiple range test
## for PFPA 
## 
## Mean Square Error:  0.5105239 
## 
## Tratamiento,  means
## 
##                      PFPA       std r        se    Min     Max       Q25
## 50 - AS          2.831875 0.2135311 4 0.3572548 2.5792  3.0437  2.696500
## 50 + AS 1000ppm  3.865900 0.6309622 4 0.3572548 2.9552  4.3659  3.699425
## 50 + AS 600ppm   4.281775 0.5510396 4 0.3572548 3.7227  5.0222  3.976650
## Control         11.417600 1.1378673 4 0.3572548 9.7275 12.2055 11.331075
##                      Q50       Q75
## 50 - AS          2.85230  2.987675
## 50 + AS 1000ppm  4.07125  4.237725
## 50 + AS 600ppm   4.19110  4.496225
## Control         11.86870 11.955225
## 
## Alpha: 0.05 ; DF Error: 12 
## 
## Critical Range
##        2        3        4 
## 1.100811 1.152234 1.183390 
## 
## Means with the same letter are not significantly different.
## 
##                      PFPA groups
## Control         11.417600      a
## 50 + AS 600ppm   4.281775      b
## 50 + AS 1000ppm  3.865900     bc
## 50 - AS          2.831875      c
A.PFPA.M4.DT
## $statistics
##     MSerror Df     Mean       CV
##   0.5105239 12 5.599287 12.76072
## 
## $parameters
##     test      name.t ntr alpha
##   Duncan Tratamiento   4  0.05
## 
## $duncan
##      Table CriticalRange
## 2 3.081307      1.100811
## 3 3.225244      1.152234
## 4 3.312453      1.183390
## 
## $means
##                      PFPA       std r        se    Min     Max       Q25
## 50 - AS          2.831875 0.2135311 4 0.3572548 2.5792  3.0437  2.696500
## 50 + AS 1000ppm  3.865900 0.6309622 4 0.3572548 2.9552  4.3659  3.699425
## 50 + AS 600ppm   4.281775 0.5510396 4 0.3572548 3.7227  5.0222  3.976650
## Control         11.417600 1.1378673 4 0.3572548 9.7275 12.2055 11.331075
##                      Q50       Q75
## 50 - AS          2.85230  2.987675
## 50 + AS 1000ppm  4.07125  4.237725
## 50 + AS 600ppm   4.19110  4.496225
## Control         11.86870 11.955225
## 
## $comparison
## NULL
## 
## $groups
##                      PFPA groups
## Control         11.417600      a
## 50 + AS 600ppm   4.281775      b
## 50 + AS 1000ppm  3.865900     bc
## 50 - AS          2.831875      c
## 
## attr(,"class")
## [1] "group"

Análisis descriptivo - Peso fresco de la parte aérea

# Datos - Gráfico - Peso fresco de la parte aérea

Datos.G.PFPA <- data.frame(factor(Tratamientos, ordered = TRUE, levels = c("Control", "50 - AS", "50 + AS 600ppm", "50 + AS 1000ppm")), Var_M1$`Peso fresco de parte aérea completo`, Var_M2$`Peso fresco de parte aérea completo`, Var_M3$`Peso fresco de parte aérea completo`, Var_M4$`Peso fresco de parte aérea completo`)
colnames(Datos.G.PFPA) <- c("Tratamientos", "31", "38","45", "52")
Datos.G.PFPA
# Unificar la variable respuesta en una sola columna
df.long.PFPA = gather(Datos.G.PFPA, dds, PFPA, 2:5)
df.long.PFPA
# Diferencias significativas con el control
#          M1  M2  M3  M4
DS.PFPA <- c("a", "a", "a", "a",  #T1
           "b*", "b*", "b*", "c*", #T2
           "b*", "b*", "b*", "b*",  #T3
           "b*", "b*", "b*", "bc*") #T4

# Media y desviación estandar de la media de los tratamientos en los diferentes muestreos.
df.sumzd.PFPA = group_by(df.long.PFPA, Tratamientos, dds, ) %>% summarise(mean = mean(PFPA), sd = sd(PFPA))
## `summarise()` has grouped output by 'Tratamientos'. You can override using the
## `.groups` argument.
# Con diferencias significativas de los tratamientos con su control
df.sumzd.PFPA.ds <- data.frame(df.sumzd.PFPA, DS.PFPA)
df.sumzd.PFPA.ds
G.PFPA = ggplot(df.sumzd.PFPA, aes(x=dds, y=mean, fill=Tratamientos))+
  geom_bar(stat = "identity", position = "dodge", color = "black", alpha = 0.5)+
  geom_errorbar(aes(ymin=mean-sd, ymax=mean+sd), width = 0.25, size=0.5, position = position_dodge(0.9), alpha = 0.5)+
  scale_fill_manual(values=c("red", "yellow", "blue", "green")) +
  theme_minimal()+
  ggtitle("Peso fresco promedio de la parte aérea \nen los diferentes muestreos") + theme(plot.title = element_text(family = "Times New Roman",
size = rel(1.5),
vjust = 0.5, 
hjust = 0.5))+
  labs(x = "Días después de siembra", y = "g")+
  theme(axis.title.x = element_text(family = "Times New Roman"), axis.title.y = element_text(family = "Times New Roman"))+
  theme(legend.title = element_text(family = "Times New Roman"))+
  geom_text(aes(x=dds, y= mean+2.2, label=DS.PFPA),
            position = position_dodge(width = 1), size = 5)
G.PFPA

Peso seco de la parte aérea

Análisis estadístico - Muestreo 1

# Datos - Peso seco de la parte aérea - Muestreo 1

datos.PSPA.M1 <- data.frame(Var_M1$`Factor riego`, Var_M1$`Factor ácido ascórbico`, Var_M1$Tratamiento, Var_M1$`Peso seco parte aérea completo`)
colnames(datos.PSPA.M1) <- c("F_riego", "F_AA", "Tratamiento", "PSPA")
datos.PSPA.M1
datos.PSPA.M1$F_riego <- as.factor(datos.PSPA.M1$F_riego)
datos.PSPA.M1$F_AA <- as.factor(datos.PSPA.M1$F_AA)
str(datos.PSPA.M1)
## 'data.frame':    16 obs. of  4 variables:
##  $ F_riego    : Factor w/ 2 levels "0.5","1": 2 2 2 2 1 1 1 1 1 1 ...
##  $ F_AA       : Factor w/ 3 levels "0 ppm","1000 ppm",..: 1 1 1 1 1 1 1 1 3 3 ...
##  $ Tratamiento: chr  "Control" "Control" "Control" "Control" ...
##  $ PSPA       : num  0.378 0.52 0.287 0.428 0.287 ...
# Anova - Peso seco de la parte aérea - Muestreo 1
A.PSPA.M1 <- aov(PSPA ~ F_riego*F_AA, data = datos.PSPA.M1)
summary(A.PSPA.M1)
##             Df  Sum Sq Mean Sq F value Pr(>F)  
## F_riego      1 0.04507 0.04507   7.086 0.0207 *
## F_AA         2 0.00390 0.00195   0.306 0.7417  
## Residuals   12 0.07633 0.00636                 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
  • Los dos tipos de riego, como factor independiente, tuvieron diferencias con una significancia del 95%.
# Prueba de normalidad de residuos
shapiro.test(A.PSPA.M1$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  A.PSPA.M1$residuals
## W = 0.96391, p-value = 0.733
  • El hecho de que no sea significativo (p-value > 0.05), representa que los datos tienen una distribución normal.
TukeyHSD(A.PSPA.M1)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = PSPA ~ F_riego * F_AA, data = datos.PSPA.M1)
## 
## $F_riego
##            diff        lwr       upr     p adj
## 1-0.5 0.1225667 0.02224301 0.2228903 0.0207192
## 
## $F_AA
##                         diff        lwr       upr     p adj
## 1000 ppm-0 ppm   -0.02065417 -0.1509478 0.1096395 0.9068635
## 600 ppm-0 ppm    -0.02932917 -0.1596228 0.1009645 0.8224679
## 600 ppm-1000 ppm -0.00867500 -0.1591252 0.1417752 0.9870530
  • Los dos tipos de riego presenta diferencias significativas.
# Anova - PSPA - Muestreo 1 - Comparación entre los tratamientos

A.PSPA.M1.CT <- aov(PSPA ~ Tratamiento, data=datos.PSPA.M1)
summary(A.PSPA.M1.CT)
##             Df  Sum Sq Mean Sq F value Pr(>F)
## Tratamiento  3 0.04897 0.01632   2.566  0.103
## Residuals   12 0.07633 0.00636
Tukey_A.PSPA.M1.CT <- TukeyHSD(A.PSPA.M1.CT)
Tukey_A.PSPA.M1.CT
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = PSPA ~ Tratamiento, data = datos.PSPA.M1)
## 
## $Tratamiento
##                                     diff         lwr       upr     p adj
## 50 + AS 1000ppm-50 - AS        -0.033150 -0.20057674 0.1342767 0.9338504
## 50 + AS 600ppm-50 - AS         -0.041825 -0.20925174 0.1256017 0.8784252
## Control-50 - AS                 0.097575 -0.06985174 0.2650017 0.3511000
## 50 + AS 600ppm-50 + AS 1000ppm -0.008675 -0.17610174 0.1587517 0.9986280
## Control-50 + AS 1000ppm         0.130725 -0.03670174 0.2981517 0.1482258
## Control-50 + AS 600ppm          0.139400 -0.02802674 0.3068267 0.1156512
  • Podemos observar que ninguno de los tratamientos tuvieron diferencias significativas con el control.
A.PSPA.M1.DT <- duncan.test(A.PSPA.M1.CT, 'Tratamiento', console = T)
## 
## Study: A.PSPA.M1.CT ~ "Tratamiento"
## 
## Duncan's new multiple range test
## for PSPA 
## 
## Mean Square Error:  0.006360455 
## 
## Tratamiento,  means
## 
##                     PSPA        std r         se    Min    Max      Q25     Q50
## 50 - AS         0.305525 0.04137257 4 0.03987623 0.2804 0.3674 0.285425 0.28715
## 50 + AS 1000ppm 0.272375 0.10813557 4 0.03987623 0.1469 0.3681 0.199850 0.28725
## 50 + AS 600ppm  0.263700 0.05053296 4 0.03987623 0.1999 0.3084 0.235000 0.27325
## Control         0.403100 0.09738196 4 0.03987623 0.2867 0.5200 0.355175 0.40285
##                      Q75
## 50 - AS         0.307250
## 50 + AS 1000ppm 0.359775
## 50 + AS 600ppm  0.301950
## Control         0.450775
## 
## Alpha: 0.05 ; DF Error: 12 
## 
## Critical Range
##         2         3         4 
## 0.1228709 0.1286106 0.1320881 
## 
## Means with the same letter are not significantly different.
## 
##                     PSPA groups
## Control         0.403100      a
## 50 - AS         0.305525     ab
## 50 + AS 1000ppm 0.272375      b
## 50 + AS 600ppm  0.263700      b
A.PSPA.M1.DT
## $statistics
##       MSerror Df     Mean       CV
##   0.006360455 12 0.311175 25.62946
## 
## $parameters
##     test      name.t ntr alpha
##   Duncan Tratamiento   4  0.05
## 
## $duncan
##      Table CriticalRange
## 2 3.081307     0.1228709
## 3 3.225244     0.1286106
## 4 3.312453     0.1320881
## 
## $means
##                     PSPA        std r         se    Min    Max      Q25     Q50
## 50 - AS         0.305525 0.04137257 4 0.03987623 0.2804 0.3674 0.285425 0.28715
## 50 + AS 1000ppm 0.272375 0.10813557 4 0.03987623 0.1469 0.3681 0.199850 0.28725
## 50 + AS 600ppm  0.263700 0.05053296 4 0.03987623 0.1999 0.3084 0.235000 0.27325
## Control         0.403100 0.09738196 4 0.03987623 0.2867 0.5200 0.355175 0.40285
##                      Q75
## 50 - AS         0.307250
## 50 + AS 1000ppm 0.359775
## 50 + AS 600ppm  0.301950
## Control         0.450775
## 
## $comparison
## NULL
## 
## $groups
##                     PSPA groups
## Control         0.403100      a
## 50 - AS         0.305525     ab
## 50 + AS 1000ppm 0.272375      b
## 50 + AS 600ppm  0.263700      b
## 
## attr(,"class")
## [1] "group"

Análisis estadístico - Muestreo 2

# Datos - Peso seco de la parte aérea - Muestreo 2

datos.PSPA.M2 <- data.frame(Var_M2$`Factor riego`, Var_M2$`Factor ácido ascórbico`, Var_M2$Tratamiento, Var_M2$`Peso seco parte aérea completo`)
colnames(datos.PSPA.M2) <- c("F_riego", "F_AA", "Tratamiento", "PSPA")
datos.PSPA.M2
datos.PSPA.M2$F_riego <- as.factor(datos.PSPA.M2$F_riego)
datos.PSPA.M2$F_AA <- as.factor(datos.PSPA.M2$F_AA)
str(datos.PSPA.M2)
## 'data.frame':    16 obs. of  4 variables:
##  $ F_riego    : Factor w/ 2 levels "0.5","1": 2 2 2 2 1 1 1 1 1 1 ...
##  $ F_AA       : Factor w/ 3 levels "0 ppm","1000 ppm",..: 1 1 1 1 1 1 1 1 3 3 ...
##  $ Tratamiento: chr  "Control" "Control" "Control" "Control" ...
##  $ PSPA       : num  0.508 0.661 0.75 0.77 0.481 ...
# Anova - Peso seco de la parte aérea - Muestreo 2
A.PSPA.M2 <- aov(PSPA ~ F_riego*F_AA, data = datos.PSPA.M2)
summary(A.PSPA.M2)
##             Df  Sum Sq Mean Sq F value  Pr(>F)   
## F_riego      1 0.19035 0.19035  12.609 0.00399 **
## F_AA         2 0.00449 0.00225   0.149 0.86337   
## Residuals   12 0.18115 0.01510                   
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
  • Los dos tipos de riego, como factor independiente, tuvieron diferencias con una significancia del 99%.
# Prueba de normalidad de residuos
shapiro.test(A.PSPA.M2$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  A.PSPA.M2$residuals
## W = 0.94341, p-value = 0.3929
  • El hecho de que no sea significativo (p-value > 0.05), representa que los datos tienen una distribución normal.
TukeyHSD(A.PSPA.M2)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = PSPA ~ F_riego * F_AA, data = datos.PSPA.M2)
## 
## $F_riego
##            diff        lwr       upr     p adj
## 1-0.5 0.2518917 0.09733484 0.4064485 0.0039896
## 
## $F_AA
##                         diff        lwr       upr     p adj
## 1000 ppm-0 ppm    0.02232083 -0.1784073 0.2230489 0.9528318
## 600 ppm-0 ppm    -0.02500417 -0.2257323 0.1757239 0.9412307
## 600 ppm-1000 ppm -0.04732500 -0.2791058 0.1844558 0.8510457
  • Los dos tipos de riego presenta diferencias significativas.
# Anova - PSPA - Muestreo 2 - Comparación entre los tratamientos

A.PSPA.M2.CT <- aov(PSPA ~ Tratamiento, data=datos.PSPA.M2)
summary(A.PSPA.M2.CT)
##             Df Sum Sq Mean Sq F value Pr(>F)  
## Tratamiento  3 0.1948 0.06495   4.302 0.0281 *
## Residuals   12 0.1812 0.01510                 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Tukey_A.PSPA.M2.CT <- TukeyHSD(A.PSPA.M2.CT)
Tukey_A.PSPA.M2.CT
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = PSPA ~ Tratamiento, data = datos.PSPA.M2)
## 
## $Tratamiento
##                                     diff          lwr       upr     p adj
## 50 + AS 1000ppm-50 - AS         0.021650 -0.236284614 0.2795846 0.9942709
## 50 + AS 600ppm-50 - AS         -0.025675 -0.283609614 0.2322596 0.9905556
## Control-50 - AS                 0.250550 -0.007384614 0.5084846 0.0578780
## 50 + AS 600ppm-50 + AS 1000ppm -0.047325 -0.305259614 0.2106096 0.9462109
## Control-50 + AS 1000ppm         0.228900 -0.029034614 0.4868346 0.0883326
## Control-50 + AS 600ppm          0.276225  0.018290386 0.5341596 0.0346927
  • Podemos observar que solo el tratamiento azul (50 + AS 600ppm), presento diferencias significativas al tener un p-valor inferior al 5%. Los demás tratamientos no tuvieron diferencias significativas, sin embargo, sus p-valores son lo suficientemente bajos comos para ser considerados agronómicamente.
A.PSPA.M2.DT <- duncan.test(A.PSPA.M2.CT, 'Tratamiento', console = T)
## 
## Study: A.PSPA.M2.CT ~ "Tratamiento"
## 
## Duncan's new multiple range test
## for PSPA 
## 
## Mean Square Error:  0.01509586 
## 
## Tratamiento,  means
## 
##                     PSPA       std r        se    Min    Max      Q25     Q50
## 50 - AS         0.421800 0.1349560 4 0.0614326 0.2210 0.5125 0.409925 0.47685
## 50 + AS 1000ppm 0.443450 0.1294538 4 0.0614326 0.2783 0.5942 0.400625 0.45065
## 50 + AS 600ppm  0.396125 0.1058534 4 0.0614326 0.3137 0.5495 0.334100 0.36065
## Control         0.672350 0.1191934 4 0.0614326 0.5084 0.7703 0.622700 0.70535
##                      Q75
## 50 - AS         0.488725
## 50 + AS 1000ppm 0.493475
## 50 + AS 600ppm  0.422675
## Control         0.755000
## 
## Alpha: 0.05 ; DF Error: 12 
## 
## Critical Range
##         2         3         4 
## 0.1892927 0.1981351 0.2034926 
## 
## Means with the same letter are not significantly different.
## 
##                     PSPA groups
## Control         0.672350      a
## 50 + AS 1000ppm 0.443450      b
## 50 - AS         0.421800      b
## 50 + AS 600ppm  0.396125      b
A.PSPA.M2.DT
## $statistics
##      MSerror Df      Mean       CV
##   0.01509586 12 0.4834312 25.41524
## 
## $parameters
##     test      name.t ntr alpha
##   Duncan Tratamiento   4  0.05
## 
## $duncan
##      Table CriticalRange
## 2 3.081307     0.1892927
## 3 3.225244     0.1981351
## 4 3.312453     0.2034926
## 
## $means
##                     PSPA       std r        se    Min    Max      Q25     Q50
## 50 - AS         0.421800 0.1349560 4 0.0614326 0.2210 0.5125 0.409925 0.47685
## 50 + AS 1000ppm 0.443450 0.1294538 4 0.0614326 0.2783 0.5942 0.400625 0.45065
## 50 + AS 600ppm  0.396125 0.1058534 4 0.0614326 0.3137 0.5495 0.334100 0.36065
## Control         0.672350 0.1191934 4 0.0614326 0.5084 0.7703 0.622700 0.70535
##                      Q75
## 50 - AS         0.488725
## 50 + AS 1000ppm 0.493475
## 50 + AS 600ppm  0.422675
## Control         0.755000
## 
## $comparison
## NULL
## 
## $groups
##                     PSPA groups
## Control         0.672350      a
## 50 + AS 1000ppm 0.443450      b
## 50 - AS         0.421800      b
## 50 + AS 600ppm  0.396125      b
## 
## attr(,"class")
## [1] "group"

Análisis estadístico - Muestreo 3

# Datos - Peso seco de la parte aérea - Muestreo 3

datos.PSPA.M3 <- data.frame(Var_M3$`Factor riego`, Var_M3$`Factor ácido ascórbico`, Var_M3$Tratamiento, Var_M3$`Peso seco parte aérea completo`)
colnames(datos.PSPA.M3) <- c("F_riego", "F_AA", "Tratamiento", "PSPA")
datos.PSPA.M3
datos.PSPA.M3$F_riego <- as.factor(datos.PSPA.M3$F_riego)
datos.PSPA.M3$F_AA <- as.factor(datos.PSPA.M3$F_AA)
str(datos.PSPA.M3)
## 'data.frame':    16 obs. of  4 variables:
##  $ F_riego    : Factor w/ 2 levels "0.5","1": 2 2 2 2 1 1 1 1 1 1 ...
##  $ F_AA       : Factor w/ 3 levels "0 ppm","1000 ppm",..: 1 1 1 1 1 1 1 1 3 3 ...
##  $ Tratamiento: chr  "Control" "Control" "Control" "Control" ...
##  $ PSPA       : num  0.98 0.932 1.301 0.791 0.546 ...
# Anova - Peso seco de la parte aérea - Muestreo 3
A.PSPA.M3 <- aov(PSPA ~ F_riego*F_AA, data = datos.PSPA.M3)
summary(A.PSPA.M3)
##             Df Sum Sq Mean Sq F value   Pr(>F)    
## F_riego      1 0.8544  0.8544   49.03 1.43e-05 ***
## F_AA         2 0.0014  0.0007    0.04     0.96    
## Residuals   12 0.2091  0.0174                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
  • Los dos tipos de riego, como factor independiente, tuvieron diferencias con una significancia del 99.9%.
# Prueba de normalidad de residuos
shapiro.test(A.PSPA.M3$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  A.PSPA.M3$residuals
## W = 0.90528, p-value = 0.09768
  • El hecho de que no sea significativo (p-value > 0.05), representa que los datos tienen una distribución normal.
TukeyHSD(A.PSPA.M3)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = PSPA ~ F_riego * F_AA, data = datos.PSPA.M3)
## 
## $F_riego
##            diff       lwr       upr    p adj
## 1-0.5 0.5336667 0.3676147 0.6997187 1.43e-05
## 
## $F_AA
##                        diff        lwr       upr     p adj
## 1000 ppm-0 ppm   0.01270833 -0.2029489 0.2283656 0.9864819
## 600 ppm-0 ppm    0.01745833 -0.1981989 0.2331156 0.9746676
## 600 ppm-1000 ppm 0.00475000 -0.2442696 0.2537696 0.9985734
  • Los dos tipos de riego presenta diferencias significativas.
# Anova - PSPA - Muestreo 3 - Comparación entre los tratamientos

A.PSPA.M3.CT <- aov(PSPA ~ Tratamiento, data=datos.PSPA.M3)
summary(A.PSPA.M3.CT)
##             Df Sum Sq Mean Sq F value   Pr(>F)    
## Tratamiento  3 0.8558 0.28527   16.37 0.000153 ***
## Residuals   12 0.2091 0.01742                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Tukey_A.PSPA.M3.CT <- TukeyHSD(A.PSPA.M3.CT)
Tukey_A.PSPA.M3.CT
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = PSPA ~ Tratamiento, data = datos.PSPA.M3)
## 
## $Tratamiento
##                                   diff        lwr       upr     p adj
## 50 + AS 1000ppm-50 - AS        0.02025 -0.2568685 0.2973685 0.9961933
## 50 + AS 600ppm-50 - AS         0.02500 -0.2521185 0.3021185 0.9929184
## Control-50 - AS                0.54875  0.2716315 0.8258685 0.0003770
## 50 + AS 600ppm-50 + AS 1000ppm 0.00475 -0.2723685 0.2818685 0.9999498
## Control-50 + AS 1000ppm        0.52850  0.2513815 0.8056185 0.0005270
## Control-50 + AS 600ppm         0.52375  0.2466315 0.8008685 0.0005705
  • Podemos observar que todos los tratamientos tienen diferencias signifciativas con respecto a su control.
A.PSPA.M3.DT <- duncan.test(A.PSPA.M3.CT, 'Tratamiento', console = T)
## 
## Study: A.PSPA.M3.CT ~ "Tratamiento"
## 
## Duncan's new multiple range test
## for PSPA 
## 
## Mean Square Error:  0.01742487 
## 
## Tratamiento,  means
## 
##                    PSPA        std r         se   Min   Max     Q25    Q50
## 50 - AS         0.45225 0.06668521 4 0.06600166 0.396 0.546 0.41025 0.4335
## 50 + AS 1000ppm 0.47250 0.02224860 4 0.06600166 0.443 0.497 0.46625 0.4750
## 50 + AS 600ppm  0.47725 0.13536463 4 0.06600166 0.305 0.636 0.43775 0.4840
## Control         1.00100 0.21548550 4 0.06600166 0.791 1.301 0.89675 0.9560
##                     Q75
## 50 - AS         0.47550
## 50 + AS 1000ppm 0.48125
## 50 + AS 600ppm  0.52350
## Control         1.06025
## 
## Alpha: 0.05 ; DF Error: 12 
## 
## Critical Range
##         2         3         4 
## 0.2033713 0.2128714 0.2186274 
## 
## Means with the same letter are not significantly different.
## 
##                    PSPA groups
## Control         1.00100      a
## 50 + AS 600ppm  0.47725      b
## 50 + AS 1000ppm 0.47250      b
## 50 - AS         0.45225      b
A.PSPA.M3.DT
## $statistics
##      MSerror Df    Mean       CV
##   0.01742487 12 0.60075 21.97309
## 
## $parameters
##     test      name.t ntr alpha
##   Duncan Tratamiento   4  0.05
## 
## $duncan
##      Table CriticalRange
## 2 3.081307     0.2033713
## 3 3.225244     0.2128714
## 4 3.312453     0.2186274
## 
## $means
##                    PSPA        std r         se   Min   Max     Q25    Q50
## 50 - AS         0.45225 0.06668521 4 0.06600166 0.396 0.546 0.41025 0.4335
## 50 + AS 1000ppm 0.47250 0.02224860 4 0.06600166 0.443 0.497 0.46625 0.4750
## 50 + AS 600ppm  0.47725 0.13536463 4 0.06600166 0.305 0.636 0.43775 0.4840
## Control         1.00100 0.21548550 4 0.06600166 0.791 1.301 0.89675 0.9560
##                     Q75
## 50 - AS         0.47550
## 50 + AS 1000ppm 0.48125
## 50 + AS 600ppm  0.52350
## Control         1.06025
## 
## $comparison
## NULL
## 
## $groups
##                    PSPA groups
## Control         1.00100      a
## 50 + AS 600ppm  0.47725      b
## 50 + AS 1000ppm 0.47250      b
## 50 - AS         0.45225      b
## 
## attr(,"class")
## [1] "group"

Análisis estadístico - Muestreo 4

# Datos - Peso seco de la parte aérea - Muestreo 4

datos.PSPA.M4 <- data.frame(Var_M4$`Factor riego`, Var_M4$`Factor ácido ascórbico`, Var_M4$Tratamiento, Var_M4$`Peso seco parte aérea completo`)
colnames(datos.PSPA.M4) <- c("F_riego", "F_AA", "Tratamiento", "PSPA")
datos.PSPA.M4
datos.PSPA.M4$F_riego <- as.factor(datos.PSPA.M4$F_riego)
datos.PSPA.M4$F_AA <- as.factor(datos.PSPA.M4$F_AA)
str(datos.PSPA.M4)
## 'data.frame':    16 obs. of  4 variables:
##  $ F_riego    : Factor w/ 2 levels "0.5","1": 2 2 2 2 1 1 1 1 1 1 ...
##  $ F_AA       : Factor w/ 3 levels "0 ppm","1000 ppm",..: 1 1 1 1 1 1 1 1 3 3 ...
##  $ Tratamiento: chr  "Control" "Control" "Control" "Control" ...
##  $ PSPA       : num  1.358 1.784 1.786 1.171 0.401 ...
# Anova - Peso seco de la parte aérea - Muestreo 4
A.PSPA.M4 <- aov(PSPA ~ F_riego*F_AA, data = datos.PSPA.M4)
summary(A.PSPA.M4)
##             Df Sum Sq Mean Sq F value  Pr(>F)    
## F_riego      1 2.7563  2.7563  86.702 7.7e-07 ***
## F_AA         2 0.0831  0.0415   1.307   0.307    
## Residuals   12 0.3815  0.0318                    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
  • Los dos tipos de riego, como factor independiente, tuvieron diferencias con una significancia del 99.9%.
# Prueba de normalidad de residuos
shapiro.test(A.PSPA.M4$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  A.PSPA.M4$residuals
## W = 0.96996, p-value = 0.838
  • El hecho de que no sea significativo (p-value > 0.05), representa que los datos tienen una distribución normal.
TukeyHSD(A.PSPA.M4)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = PSPA ~ F_riego * F_AA, data = datos.PSPA.M4)
## 
## $F_riego
##            diff       lwr      upr p adj
## 1-0.5 0.9585167 0.7342288 1.182805 8e-07
## 
## $F_AA
##                        diff        lwr       upr     p adj
## 1000 ppm-0 ppm   0.08987083 -0.2014193 0.3811610 0.6964108
## 600 ppm-0 ppm    0.13864583 -0.1526443 0.4299360 0.4376326
## 600 ppm-1000 ppm 0.04877500 -0.2875779 0.3851279 0.9213411
  • Los dos tipos de riego son completamente distintos.
# Anova - PSPA - Muestreo 4 - Comparación entre los tratamientos

A.PSPA.M4.CT <- aov(PSPA ~ Tratamiento, data=datos.PSPA.M4)
summary(A.PSPA.M4.CT)
##             Df Sum Sq Mean Sq F value   Pr(>F)    
## Tratamiento  3 2.8394  0.9465   29.77 7.67e-06 ***
## Residuals   12 0.3815  0.0318                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Tukey_A.PSPA.M4.CT <- TukeyHSD(A.PSPA.M4.CT)
Tukey_A.PSPA.M4.CT
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = PSPA ~ Tratamiento, data = datos.PSPA.M4)
## 
## $Tratamiento
##                                    diff        lwr       upr     p adj
## 50 + AS 1000ppm-50 - AS        0.147000 -0.2273064 0.5213064 0.6581575
## 50 + AS 600ppm-50 - AS         0.195775 -0.1785314 0.5700814 0.4389475
## Control-50 - AS                1.072775  0.6984686 1.4470814 0.0000103
## 50 + AS 600ppm-50 + AS 1000ppm 0.048775 -0.3255314 0.4230814 0.9794101
## Control-50 + AS 1000ppm        0.925775  0.5514686 1.3000814 0.0000460
## Control-50 + AS 600ppm         0.877000  0.5026936 1.2513064 0.0000782
  • Podemos observar que todos los tratamientos tienen diferencias signifciativas con respecto a su control.
A.PSPA.M4.DT <- duncan.test(A.PSPA.M4.CT, 'Tratamiento', console = T)
## 
## Study: A.PSPA.M4.CT ~ "Tratamiento"
## 
## Duncan's new multiple range test
## for PSPA 
## 
## Mean Square Error:  0.03179019 
## 
## Tratamiento,  means
## 
##                     PSPA        std r         se    Min    Max      Q25     Q50
## 50 - AS         0.452200 0.06563541 4 0.08914902 0.3922 0.5242 0.398875 0.44620
## 50 + AS 1000ppm 0.599200 0.12282150 4 0.08914902 0.4308 0.7008 0.547200 0.63260
## 50 + AS 600ppm  0.647975 0.10733304 4 0.08914902 0.5440 0.7795 0.570325 0.63420
## Control         1.524975 0.31023741 4 0.08914902 1.1709 1.7863 1.311450 1.57135
##                      Q75
## 50 - AS         0.499525
## 50 + AS 1000ppm 0.684600
## 50 + AS 600ppm  0.711850
## Control         1.784875
## 
## Alpha: 0.05 ; DF Error: 12 
## 
## Critical Range
##         2         3         4 
## 0.2746955 0.2875273 0.2953019 
## 
## Means with the same letter are not significantly different.
## 
##                     PSPA groups
## Control         1.524975      a
## 50 + AS 600ppm  0.647975      b
## 50 + AS 1000ppm 0.599200      b
## 50 - AS         0.452200      b
A.PSPA.M4.DT
## $statistics
##      MSerror Df      Mean       CV
##   0.03179019 12 0.8060875 22.11894
## 
## $parameters
##     test      name.t ntr alpha
##   Duncan Tratamiento   4  0.05
## 
## $duncan
##      Table CriticalRange
## 2 3.081307     0.2746955
## 3 3.225244     0.2875273
## 4 3.312453     0.2953019
## 
## $means
##                     PSPA        std r         se    Min    Max      Q25     Q50
## 50 - AS         0.452200 0.06563541 4 0.08914902 0.3922 0.5242 0.398875 0.44620
## 50 + AS 1000ppm 0.599200 0.12282150 4 0.08914902 0.4308 0.7008 0.547200 0.63260
## 50 + AS 600ppm  0.647975 0.10733304 4 0.08914902 0.5440 0.7795 0.570325 0.63420
## Control         1.524975 0.31023741 4 0.08914902 1.1709 1.7863 1.311450 1.57135
##                      Q75
## 50 - AS         0.499525
## 50 + AS 1000ppm 0.684600
## 50 + AS 600ppm  0.711850
## Control         1.784875
## 
## $comparison
## NULL
## 
## $groups
##                     PSPA groups
## Control         1.524975      a
## 50 + AS 600ppm  0.647975      b
## 50 + AS 1000ppm 0.599200      b
## 50 - AS         0.452200      b
## 
## attr(,"class")
## [1] "group"

Análisis descriptivo - Peso fresco de la parte aérea

# Datos - Gráfico - Peso seco de la parte aérea

Datos.G.PSPA <- data.frame(factor(Tratamientos, ordered = TRUE, levels = c("Control", "50 - AS", "50 + AS 600ppm", "50 + AS 1000ppm")), Var_M1$`Peso seco parte aérea completo`, Var_M2$`Peso seco parte aérea completo`, Var_M3$`Peso seco parte aérea completo`, Var_M4$`Peso seco parte aérea completo`)
colnames(Datos.G.PSPA) <- c("Tratamientos", "31", "38","45", "52")
Datos.G.PSPA
# Unificar la variable respuesta en una sola columna
df.long.PSPA = gather(Datos.G.PSPA, dds, PSPA, 2:5)
df.long.PSPA
# Diferencias significativas con el control
#          M1  M2  M3  M4
DS.PSPA <- c("a", "a", "a", "a",  #T1
           "ab", "b*", "b*", "b*", #T2
           "b", "b*", "b*", "b*",  #T3
           "b", "b", "b*", "b*") #T4

# Media y desviación estandar de la media de los tratamientos en los diferentes muestreos.
df.sumzd.PSPA = group_by(df.long.PSPA, Tratamientos, dds, ) %>% summarise(mean = mean(PSPA), sd = sd(PSPA))
## `summarise()` has grouped output by 'Tratamientos'. You can override using the
## `.groups` argument.
# Con diferencias significativas de los tratamientos con su control
df.sumzd.PSPA.ds <- data.frame(df.sumzd.PSPA, DS.PSPA)
df.sumzd.PSPA.ds
G.PSPA = ggplot(df.sumzd.PSPA, aes(x=dds, y=mean, fill=Tratamientos))+
  geom_bar(stat = "identity", position = "dodge", color = "black", alpha = 0.5)+
  geom_errorbar(aes(ymin=mean-sd, ymax=mean+sd), width = 0.25, size=0.5, position = position_dodge(0.9), alpha = 0.5)+
  scale_fill_manual(values=c("red", "yellow", "blue", "green")) +
  theme_minimal()+
  ggtitle("Peso seco promedio de la parte aérea \nen los diferentes muestreos") + theme(plot.title = element_text(family = "Times New Roman",
size = rel(1.5),
vjust = 0.5, 
hjust = 0.5))+
  labs(x = "Días después de siembra", y = "g")+
  theme(axis.title.x = element_text(family = "Times New Roman"), axis.title.y = element_text(family = "Times New Roman"))+
  theme(legend.title = element_text(family = "Times New Roman"))+
  geom_text(aes(x=dds, y= mean+0.4, label=DS.PSPA),
            position = position_dodge(width = 1), size = 5)
G.PSPA

Peso fresco de la raíz tuberosa

Análisis estadístico - Muestreo 1

# Datos - Peso fresco de la raíz tuberosa - Muestreo 1

datos.PFRT.M1 <- data.frame(Var_M1$`Factor riego`, Var_M1$`Factor ácido ascórbico`, Var_M1$Tratamiento, Var_M1$`Peso fresco raíz tuberosa`)
colnames(datos.PFRT.M1) <- c("F_riego", "F_AA", "Tratamiento", "PFRT")
datos.PFRT.M1
datos.PFRT.M1$F_riego <- as.factor(datos.PFRT.M1$F_riego)
datos.PFRT.M1$F_AA <- as.factor(datos.PFRT.M1$F_AA)
str(datos.PFRT.M1)
## 'data.frame':    16 obs. of  4 variables:
##  $ F_riego    : Factor w/ 2 levels "0.5","1": 2 2 2 2 1 1 1 1 1 1 ...
##  $ F_AA       : Factor w/ 3 levels "0 ppm","1000 ppm",..: 1 1 1 1 1 1 1 1 3 3 ...
##  $ Tratamiento: chr  "Control" "Control" "Control" "Control" ...
##  $ PFRT       : num  7.78 7.53 7.96 8.42 4.13 3.93 2.39 3.87 4.01 4.65 ...
# Anova - Peso fresco de la raíz tuberosa - Muestreo 1
A.PFRT.M1 <- aov(PFRT ~ F_riego*F_AA, data = datos.PFRT.M1)
summary(A.PFRT.M1)
##             Df Sum Sq Mean Sq F value   Pr(>F)    
## F_riego      1  47.28   47.28  64.644 3.57e-06 ***
## F_AA         2   2.76    1.38   1.889    0.194    
## Residuals   12   8.78    0.73                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
  • Los dos tipos de riego, como factor independiente, tuvieron diferencias con una significancia del 99.9%.
# Prueba de normalidad de residuos
shapiro.test(A.PFRT.M1$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  A.PFRT.M1$residuals
## W = 0.9621, p-value = 0.7001
  • El hecho de que no sea significativo (p-value > 0.05), representa que los datos tienen una distribución normal.
TukeyHSD(A.PFRT.M1)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = PFRT ~ F_riego * F_AA, data = datos.PFRT.M1)
## 
## $F_riego
##       diff      lwr      upr   p adj
## 1-0.5 3.97 2.894166 5.045834 3.6e-06
## 
## $F_AA
##                      diff       lwr       upr     p adj
## 1000 ppm-0 ppm    0.86375 -0.533472 2.2609720 0.2638566
## 600 ppm-0 ppm    -0.11875 -1.515972 1.2784720 0.9721214
## 600 ppm-1000 ppm -0.98250 -2.595873 0.6308729 0.2733459
  • Los dos tipos de riego presenta diferencias significativas.
# Anova - PFRT - Muestreo 1 - Comparación entre los tratamientos

A.PFRT.M1.CT <- aov(PFRT ~ Tratamiento, data=datos.PFRT.M1)
summary(A.PFRT.M1.CT)
##             Df Sum Sq Mean Sq F value   Pr(>F)    
## Tratamiento  3  50.05  16.682   22.81 3.02e-05 ***
## Residuals   12   8.78   0.731                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Tukey_A.PFRT.M1.CT <- TukeyHSD(A.PFRT.M1.CT)
Tukey_A.PFRT.M1.CT
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = PFRT ~ Tratamiento, data = datos.PFRT.M1)
## 
## $Tratamiento
##                                   diff        lwr       upr     p adj
## 50 + AS 1000ppm-50 - AS         1.0500 -0.7454234 2.8454234 0.3483248
## 50 + AS 600ppm-50 - AS          0.0675 -1.7279234 1.8629234 0.9994731
## Control-50 - AS                 4.3425  2.5470766 6.1379234 0.0000573
## 50 + AS 600ppm-50 + AS 1000ppm -0.9825 -2.7779234 0.8129234 0.4020239
## Control-50 + AS 1000ppm         3.2925  1.4970766 5.0879234 0.0007419
## Control-50 + AS 600ppm          4.2750  2.4795766 6.0704234 0.0000668
  • Podemos observar que todos los tratamientos tienen diferencias signifciativas con respecto a su control.
A.PFRT.M1.DT <- duncan.test(A.PFRT.M1.CT, 'Tratamiento', console = T)
## 
## Study: A.PFRT.M1.CT ~ "Tratamiento"
## 
## Duncan's new multiple range test
## for PFRT 
## 
## Mean Square Error:  0.7314292 
## 
## Tratamiento,  means
## 
##                   PFRT       std r        se  Min  Max    Q25   Q50   Q75
## 50 - AS         3.5800 0.8010826 4 0.4276182 2.39 4.13 3.5000 3.900 3.980
## 50 + AS 1000ppm 4.6300 1.0312129 4 0.4276182 3.59 5.98 3.9950 4.475 5.110
## 50 + AS 600ppm  3.6475 1.0389859 4 0.4276182 2.20 4.65 3.3475 3.870 4.170
## Control         7.9225 0.3756217 4 0.4276182 7.53 8.42 7.7175 7.870 8.075
## 
## Alpha: 0.05 ; DF Error: 12 
## 
## Critical Range
##        2        3        4 
## 1.317623 1.379173 1.416465 
## 
## Means with the same letter are not significantly different.
## 
##                   PFRT groups
## Control         7.9225      a
## 50 + AS 1000ppm 4.6300      b
## 50 + AS 600ppm  3.6475      b
## 50 - AS         3.5800      b
A.PFRT.M1.DT
## $statistics
##     MSerror Df  Mean       CV
##   0.7314292 12 4.945 17.29497
## 
## $parameters
##     test      name.t ntr alpha
##   Duncan Tratamiento   4  0.05
## 
## $duncan
##      Table CriticalRange
## 2 3.081307      1.317623
## 3 3.225244      1.379173
## 4 3.312453      1.416465
## 
## $means
##                   PFRT       std r        se  Min  Max    Q25   Q50   Q75
## 50 - AS         3.5800 0.8010826 4 0.4276182 2.39 4.13 3.5000 3.900 3.980
## 50 + AS 1000ppm 4.6300 1.0312129 4 0.4276182 3.59 5.98 3.9950 4.475 5.110
## 50 + AS 600ppm  3.6475 1.0389859 4 0.4276182 2.20 4.65 3.3475 3.870 4.170
## Control         7.9225 0.3756217 4 0.4276182 7.53 8.42 7.7175 7.870 8.075
## 
## $comparison
## NULL
## 
## $groups
##                   PFRT groups
## Control         7.9225      a
## 50 + AS 1000ppm 4.6300      b
## 50 + AS 600ppm  3.6475      b
## 50 - AS         3.5800      b
## 
## attr(,"class")
## [1] "group"

Análisis estadístico - Muestreo 2

# Datos - Peso fresco de la raíz tuberosa - Muestreo 2

datos.PFRT.M2 <- data.frame(Var_M2$`Factor riego`, Var_M2$`Factor ácido ascórbico`, Var_M2$Tratamiento, Var_M2$`Peso fresco raíz tuberosa`)
colnames(datos.PFRT.M2) <- c("F_riego", "F_AA", "Tratamiento", "PFRT")
datos.PFRT.M2
datos.PFRT.M2$F_riego <- as.factor(datos.PFRT.M2$F_riego)
datos.PFRT.M2$F_AA <- as.factor(datos.PFRT.M2$F_AA)
str(datos.PFRT.M2)
## 'data.frame':    16 obs. of  4 variables:
##  $ F_riego    : Factor w/ 2 levels "0.5","1": 2 2 2 2 1 1 1 1 1 1 ...
##  $ F_AA       : Factor w/ 3 levels "0 ppm","1000 ppm",..: 1 1 1 1 1 1 1 1 3 3 ...
##  $ Tratamiento: chr  "Control" "Control" "Control" "Control" ...
##  $ PFRT       : num  10.76 21.05 27.99 23.94 9.73 ...
# Anova - Peso fresco de la raíz tuberosa - Muestreo 2
A.PFRT.M2 <- aov(PFRT ~ F_riego*F_AA, data = datos.PFRT.M2)
summary(A.PFRT.M2)
##             Df Sum Sq Mean Sq F value   Pr(>F)    
## F_riego      1  450.1   450.1  23.440 0.000404 ***
## F_AA         2    3.5     1.8   0.092 0.912489    
## Residuals   12  230.4    19.2                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
  • Los dos tipos de riego, como factor independiente, tuvieron diferencias con una significancia del 99.9%.
# Prueba de normalidad de residuos
shapiro.test(A.PFRT.M2$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  A.PFRT.M2$residuals
## W = 0.93201, p-value = 0.2623
  • El hecho de que no sea significativo (p-value > 0.05), representa que los datos tienen una distribución normal.
TukeyHSD(A.PFRT.M2)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = PFRT ~ F_riego * F_AA, data = datos.PFRT.M2)
## 
## $F_riego
##           diff      lwr      upr    p adj
## 1-0.5 12.24917 6.736659 17.76167 0.000404
## 
## $F_AA
##                        diff       lwr      upr     p adj
## 1000 ppm-0 ppm   -1.0166667 -8.175944 6.142611 0.9244204
## 600 ppm-0 ppm    -0.1566667 -7.315944 7.002611 0.9981230
## 600 ppm-1000 ppm  0.8600000 -7.406822 9.126822 0.9585725
  • Los dos tipos de riego presenta diferencias significativas.
# Anova - PFRT - Muestreo 2 - Comparación entre los tratamientos

A.PFRT.M2.CT <- aov(PFRT ~ Tratamiento, data=datos.PFRT.M2)
summary(A.PFRT.M2.CT)
##             Df Sum Sq Mean Sq F value  Pr(>F)   
## Tratamiento  3  453.7   151.2   7.875 0.00361 **
## Residuals   12  230.4    19.2                   
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Tukey_A.PFRT.M2.CT <- TukeyHSD(A.PFRT.M2.CT)
Tukey_A.PFRT.M2.CT
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = PFRT ~ Tratamiento, data = datos.PFRT.M2)
## 
## $Tratamiento
##                                   diff        lwr       upr     p adj
## 50 + AS 1000ppm-50 - AS        -1.3100 -10.509637  7.889637 0.9734845
## 50 + AS 600ppm-50 - AS         -0.4500  -9.649637  8.749637 0.9988443
## Control-50 - AS                11.6625   2.462863 20.862137 0.0124718
## 50 + AS 600ppm-50 + AS 1000ppm  0.8600  -8.339637 10.059637 0.9921399
## Control-50 + AS 1000ppm        12.9725   3.772863 22.172137 0.0059832
## Control-50 + AS 600ppm         12.1125   2.912863 21.312137 0.0096794
  • Podemos observar que todos los tratamientos tienen diferencias signifciativas con respecto a su control.
A.PFRT.M2.DT <- duncan.test(A.PFRT.M2.CT, 'Tratamiento', console = T)
## 
## Study: A.PFRT.M2.CT ~ "Tratamiento"
## 
## Duncan's new multiple range test
## for PFRT 
## 
## Mean Square Error:  19.20348 
## 
## Tratamiento,  means
## 
##                    PFRT      std r       se   Min   Max     Q25    Q50     Q75
## 50 - AS          9.2725 1.869409 4 2.191089  6.67 11.12  8.8450  9.650 10.0775
## 50 + AS 1000ppm  7.9625 4.142402 4 2.191089  2.57 11.98  5.9075  8.650 10.7050
## 50 + AS 600ppm   8.8225 1.429717 4 2.191089  7.33 10.11  7.7350  8.925 10.0125
## Control         20.9350 7.356333 4 2.191089 10.76 27.99 18.4775 22.495 24.9525
## 
## Alpha: 0.05 ; DF Error: 12 
## 
## Critical Range
##        2        3        4 
## 6.751416 7.066794 7.257878 
## 
## Means with the same letter are not significantly different.
## 
##                    PFRT groups
## Control         20.9350      a
## 50 - AS          9.2725      b
## 50 + AS 600ppm   8.8225      b
## 50 + AS 1000ppm  7.9625      b
A.PFRT.M2.DT
## $statistics
##    MSerror Df     Mean       CV
##   19.20348 12 11.74812 37.30108
## 
## $parameters
##     test      name.t ntr alpha
##   Duncan Tratamiento   4  0.05
## 
## $duncan
##      Table CriticalRange
## 2 3.081307      6.751416
## 3 3.225244      7.066794
## 4 3.312453      7.257878
## 
## $means
##                    PFRT      std r       se   Min   Max     Q25    Q50     Q75
## 50 - AS          9.2725 1.869409 4 2.191089  6.67 11.12  8.8450  9.650 10.0775
## 50 + AS 1000ppm  7.9625 4.142402 4 2.191089  2.57 11.98  5.9075  8.650 10.7050
## 50 + AS 600ppm   8.8225 1.429717 4 2.191089  7.33 10.11  7.7350  8.925 10.0125
## Control         20.9350 7.356333 4 2.191089 10.76 27.99 18.4775 22.495 24.9525
## 
## $comparison
## NULL
## 
## $groups
##                    PFRT groups
## Control         20.9350      a
## 50 - AS          9.2725      b
## 50 + AS 600ppm   8.8225      b
## 50 + AS 1000ppm  7.9625      b
## 
## attr(,"class")
## [1] "group"

Análisis estadístico - Muestreo 3

# Datos - Peso fresco de la raíz tuberosa - Muestreo 3

datos.PFRT.M3 <- data.frame(Var_M3$`Factor riego`, Var_M3$`Factor ácido ascórbico`, Var_M3$Tratamiento, Var_M3$`Peso fresco raíz tuberosa`)
colnames(datos.PFRT.M3) <- c("F_riego", "F_AA", "Tratamiento", "PFRT")
datos.PFRT.M3
datos.PFRT.M3$F_riego <- as.factor(datos.PFRT.M3$F_riego)
datos.PFRT.M3$F_AA <- as.factor(datos.PFRT.M3$F_AA)
str(datos.PFRT.M3)
## 'data.frame':    16 obs. of  4 variables:
##  $ F_riego    : Factor w/ 2 levels "0.5","1": 2 2 2 2 1 1 1 1 1 1 ...
##  $ F_AA       : Factor w/ 3 levels "0 ppm","1000 ppm",..: 1 1 1 1 1 1 1 1 3 3 ...
##  $ Tratamiento: chr  "Control" "Control" "Control" "Control" ...
##  $ PFRT       : num  24.64 30.45 14.62 25.58 4.98 ...
# Anova - Peso fresco de la raíz tuberosa - Muestreo 3
A.PFRT.M3 <- aov(PFRT ~ F_riego*F_AA, data = datos.PFRT.M3)
summary(A.PFRT.M3)
##             Df Sum Sq Mean Sq F value   Pr(>F)    
## F_riego      1  980.1   980.1  87.288 7.43e-07 ***
## F_AA         2    3.0     1.5   0.134    0.876    
## Residuals   12  134.7    11.2                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
  • Los dos tipos de riego, como factor independiente, tuvieron diferencias con una significancia del 99.9%.
# Prueba de normalidad de residuos
shapiro.test(A.PFRT.M3$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  A.PFRT.M3$residuals
## W = 0.68506, p-value = 0.0001161
  • Los datos tienen una distribución normal, por lo tanto, se debe aplicar otra prueba que soporte la distribución de estos datos para eventualmente, analizar la residualidad, sin embargo, en esta ocasión no se realizará ya que sabemos, desde la toma de los datos de esta variable, que estos datos no iban a presentar diferencias significativas importantes.
TukeyHSD(A.PFRT.M3)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = PFRT ~ F_riego * F_AA, data = datos.PFRT.M3)
## 
## $F_riego
##         diff      lwr      upr p adj
## 1-0.5 18.075 13.85977 22.29023 7e-07
## 
## $F_AA
##                   diff       lwr      upr     p adj
## 1000 ppm-0 ppm    0.79 -4.684456 6.264456 0.9220681
## 600 ppm-0 ppm     0.61 -4.864456 6.084456 0.9526442
## 600 ppm-1000 ppm -0.18 -6.501357 6.141357 0.9968242
  • Los dos tipos de riego presenta diferencias significativas.
# Anova - PFRT - Muestreo 3 - Comparación entre los tratamientos

A.PFRT.M3.CT <- aov(PFRT ~ Tratamiento, data=datos.PFRT.M3)
summary(A.PFRT.M3.CT)
##             Df Sum Sq Mean Sq F value   Pr(>F)    
## Tratamiento  3  983.1   327.7   29.18 8.52e-06 ***
## Residuals   12  134.7    11.2                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Tukey_A.PFRT.M3.CT <- TukeyHSD(A.PFRT.M3.CT)
Tukey_A.PFRT.M3.CT
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = PFRT ~ Tratamiento, data = datos.PFRT.M3)
## 
## $Tratamiento
##                                  diff       lwr       upr     p adj
## 50 + AS 1000ppm-50 - AS         1.140 -5.894649  8.174649 0.9618387
## 50 + AS 600ppm-50 - AS          0.960 -6.074649  7.994649 0.9765057
## Control-50 - AS                18.775 11.740351 25.809649 0.0000215
## 50 + AS 600ppm-50 + AS 1000ppm -0.180 -7.214649  6.854649 0.9998334
## Control-50 + AS 1000ppm        17.635 10.600351 24.669649 0.0000403
## Control-50 + AS 600ppm         17.815 10.780351 24.849649 0.0000364
  • Podemos observar que todos los tratamientos tienen diferencias signifciativas con respecto a su control.
A.PFRT.M3.DT <- duncan.test(A.PFRT.M3.CT, 'Tratamiento', console = T)
## 
## Study: A.PFRT.M3.CT ~ "Tratamiento"
## 
## Duncan's new multiple range test
## for PFRT 
## 
## Mean Square Error:  11.22854 
## 
## Tratamiento,  means
## 
##                    PFRT       std r       se   Min   Max    Q25    Q50     Q75
## 50 - AS          5.0475 0.4729605 4 1.675451  4.42  5.52  4.840  5.125  5.3325
## 50 + AS 1000ppm  6.1875 0.4771705 4 1.675451  5.64  6.64  5.865  6.235  6.5575
## 50 + AS 600ppm   6.0075 0.5835166 4 1.675451  5.28  6.67  5.730  6.040  6.3175
## Control         23.8225 6.6424613 4 1.675451 14.62 30.45 22.135 25.110 26.7975
## 
## Alpha: 0.05 ; DF Error: 12 
## 
## Critical Range
##        2        3        4 
## 5.162578 5.403737 5.549852 
## 
## Means with the same letter are not significantly different.
## 
##                    PFRT groups
## Control         23.8225      a
## 50 + AS 1000ppm  6.1875      b
## 50 + AS 600ppm   6.0075      b
## 50 - AS          5.0475      b
A.PFRT.M3.DT
## $statistics
##    MSerror Df     Mean       CV
##   11.22854 12 10.26625 32.63998
## 
## $parameters
##     test      name.t ntr alpha
##   Duncan Tratamiento   4  0.05
## 
## $duncan
##      Table CriticalRange
## 2 3.081307      5.162578
## 3 3.225244      5.403737
## 4 3.312453      5.549852
## 
## $means
##                    PFRT       std r       se   Min   Max    Q25    Q50     Q75
## 50 - AS          5.0475 0.4729605 4 1.675451  4.42  5.52  4.840  5.125  5.3325
## 50 + AS 1000ppm  6.1875 0.4771705 4 1.675451  5.64  6.64  5.865  6.235  6.5575
## 50 + AS 600ppm   6.0075 0.5835166 4 1.675451  5.28  6.67  5.730  6.040  6.3175
## Control         23.8225 6.6424613 4 1.675451 14.62 30.45 22.135 25.110 26.7975
## 
## $comparison
## NULL
## 
## $groups
##                    PFRT groups
## Control         23.8225      a
## 50 + AS 1000ppm  6.1875      b
## 50 + AS 600ppm   6.0075      b
## 50 - AS          5.0475      b
## 
## attr(,"class")
## [1] "group"

Análisis estadístico - Muestreo 4

# Datos - Peso fresco de la raíz tuberosa - Muestreo 4

datos.PFRT.M4 <- data.frame(Var_M4$`Factor riego`, Var_M4$`Factor ácido ascórbico`, Var_M4$Tratamiento, Var_M4$`Peso fresco raíz tuberosa`)
colnames(datos.PFRT.M4) <- c("F_riego", "F_AA", "Tratamiento", "PFRT")
datos.PFRT.M4
datos.PFRT.M4$F_riego <- as.factor(datos.PFRT.M4$F_riego)
datos.PFRT.M4$F_AA <- as.factor(datos.PFRT.M4$F_AA)
str(datos.PFRT.M4)
## 'data.frame':    16 obs. of  4 variables:
##  $ F_riego    : Factor w/ 2 levels "0.5","1": 2 2 2 2 1 1 1 1 1 1 ...
##  $ F_AA       : Factor w/ 3 levels "0 ppm","1000 ppm",..: 1 1 1 1 1 1 1 1 3 3 ...
##  $ Tratamiento: chr  "Control" "Control" "Control" "Control" ...
##  $ PFRT       : num  24.87 25.52 22.47 27.42 8.67 ...
# Anova - Peso fresco de la raíz tuberosa - Muestreo 4
A.PFRT.M4 <- aov(PFRT ~ F_riego*F_AA, data = datos.PFRT.M4)
summary(A.PFRT.M4)
##             Df Sum Sq Mean Sq F value   Pr(>F)    
## F_riego      1  990.1   990.1 346.485 3.22e-10 ***
## F_AA         2    1.1     0.6   0.199    0.822    
## Residuals   12   34.3     2.9                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
  • Los dos tipos de riego, como factor independiente, tuvieron diferencias con una significancia del 99.9%.
# Prueba de normalidad de residuos
shapiro.test(A.PFRT.M4$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  A.PFRT.M4$residuals
## W = 0.96714, p-value = 0.7903
  • El hecho de que no sea significativo (p-value > 0.05), representa que los datos tienen una distribución normal.
TukeyHSD(A.PFRT.M4)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = PFRT ~ F_riego * F_AA, data = datos.PFRT.M4)
## 
## $F_riego
##           diff      lwr     upr p adj
## 1-0.5 18.16667 16.04023 20.2931     0
## 
## $F_AA
##                        diff       lwr      upr     p adj
## 1000 ppm-0 ppm    0.4795833 -2.282093 3.241259 0.8894738
## 600 ppm-0 ppm    -0.2479167 -3.009593 2.513759 0.9689565
## 600 ppm-1000 ppm -0.7275000 -3.916409 2.461409 0.8181924
  • Los dos tipos de riego son completamente distintos.
# Anova - PFRT - Muestreo 4 - Comparación entre los tratamientos

A.PFRT.M4.CT <- aov(PFRT ~ Tratamiento, data=datos.PFRT.M4)
summary(A.PFRT.M4.CT)
##             Df Sum Sq Mean Sq F value   Pr(>F)    
## Tratamiento  3  991.2   330.4   115.6 4.04e-09 ***
## Residuals   12   34.3     2.9                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Tukey_A.PFRT.M4.CT <- TukeyHSD(A.PFRT.M4.CT)
Tukey_A.PFRT.M4.CT
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = PFRT ~ Tratamiento, data = datos.PFRT.M4)
## 
## $Tratamiento
##                                   diff      lwr      upr     p adj
## 50 + AS 1000ppm-50 - AS         0.5375 -3.01124  4.08624 0.9684291
## 50 + AS 600ppm-50 - AS         -0.1900 -3.73874  3.35874 0.9984874
## Control-50 - AS                18.2825 14.73376 21.83124 0.0000000
## 50 + AS 600ppm-50 + AS 1000ppm -0.7275 -4.27624  2.82124 0.9273783
## Control-50 + AS 1000ppm        17.7450 14.19626 21.29374 0.0000000
## Control-50 + AS 600ppm         18.4725 14.92376 22.02124 0.0000000
  • Podemos observar que todos los tratamientos tienen diferencias signifciativas con respecto a su control.
A.PFRT.M4.DT <- duncan.test(A.PFRT.M4.CT, 'Tratamiento', console = T)
## 
## Study: A.PFRT.M4.CT ~ "Tratamiento"
## 
## Duncan's new multiple range test
## for PFRT 
## 
## Mean Square Error:  2.857504 
## 
## Tratamiento,  means
## 
##                    PFRT      std r        se   Min   Max    Q25    Q50     Q75
## 50 - AS          6.7875 1.522594 4 0.8452077  5.13  8.67  5.865  6.675  7.5975
## 50 + AS 1000ppm  7.3250 1.832858 4 0.8452077  5.38  9.71  6.295  7.105  8.1350
## 50 + AS 600ppm   6.5975 1.255929 4 0.8452077  5.02  7.71  5.875  6.830  7.5525
## Control         25.0700 2.043282 4 0.8452077 22.47 27.42 24.270 25.195 25.9950
## 
## Alpha: 0.05 ; DF Error: 12 
## 
## Critical Range
##        2        3        4 
## 2.604344 2.726001 2.799711 
## 
## Means with the same letter are not significantly different.
## 
##                    PFRT groups
## Control         25.0700      a
## 50 + AS 1000ppm  7.3250      b
## 50 - AS          6.7875      b
## 50 + AS 600ppm   6.5975      b
A.PFRT.M4.DT
## $statistics
##    MSerror Df   Mean      CV
##   2.857504 12 11.445 14.7699
## 
## $parameters
##     test      name.t ntr alpha
##   Duncan Tratamiento   4  0.05
## 
## $duncan
##      Table CriticalRange
## 2 3.081307      2.604344
## 3 3.225244      2.726001
## 4 3.312453      2.799711
## 
## $means
##                    PFRT      std r        se   Min   Max    Q25    Q50     Q75
## 50 - AS          6.7875 1.522594 4 0.8452077  5.13  8.67  5.865  6.675  7.5975
## 50 + AS 1000ppm  7.3250 1.832858 4 0.8452077  5.38  9.71  6.295  7.105  8.1350
## 50 + AS 600ppm   6.5975 1.255929 4 0.8452077  5.02  7.71  5.875  6.830  7.5525
## Control         25.0700 2.043282 4 0.8452077 22.47 27.42 24.270 25.195 25.9950
## 
## $comparison
## NULL
## 
## $groups
##                    PFRT groups
## Control         25.0700      a
## 50 + AS 1000ppm  7.3250      b
## 50 - AS          6.7875      b
## 50 + AS 600ppm   6.5975      b
## 
## attr(,"class")
## [1] "group"

Análisis descriptivo - Peso fresco de la parte aérea

# Datos - Gráfico - Peso fresco de la parte aérea

Datos.G.PFRT <- data.frame(factor(Tratamientos, ordered = TRUE, levels = c("Control", "50 - AS", "50 + AS 600ppm", "50 + AS 1000ppm")), Var_M1$`Peso fresco raíz tuberosa`, Var_M2$`Peso fresco raíz tuberosa`, Var_M3$`Peso fresco raíz tuberosa`, Var_M4$`Peso fresco raíz tuberosa`)
colnames(Datos.G.PFRT) <- c("Tratamientos", "31", "38","45", "52")
Datos.G.PFRT
# Unificar la variable respuesta en una sola columna
df.long.PFRT = gather(Datos.G.PFRT, dds, PFRT, 2:5)
df.long.PFRT
# Diferencias significativas con el control
#          M1  M2  M3  M4
DS.PFRT <- c("a", "a", "a", "a",  #T1
           "b*", "b*", "b*", "b*", #T2
           "b*", "b*", "b*", "b*",  #T3
           "b*", "b*", "b*", "b*") #T4

# Media y desviación estandar de la media de los tratamientos en los diferentes muestreos.
df.sumzd.PFRT = group_by(df.long.PFRT, Tratamientos, dds, ) %>% summarise(mean = mean(PFRT), sd = sd(PFRT))
## `summarise()` has grouped output by 'Tratamientos'. You can override using the
## `.groups` argument.
# Con diferencias significativas de los tratamientos con su control
df.sumzd.PFRT.ds <- data.frame(df.sumzd.PFRT, DS.PFRT)
df.sumzd.PFRT.ds
G.PFRT = ggplot(df.sumzd.PFRT, aes(x=dds, y=mean, fill=Tratamientos))+
  geom_bar(stat = "identity", position = "dodge", color = "black", alpha = 0.5)+
  geom_errorbar(aes(ymin=mean-sd, ymax=mean+sd), width = 0.25, size=0.5, position = position_dodge(0.9), alpha = 0.5)+
  scale_fill_manual(values=c("red", "yellow", "blue", "green")) +
  theme_minimal()+
  theme(axis.text.x = element_text (size = 15),
        axis.text.y = element_text (size = 15))+
  ggtitle("Peso fresco promedio de la raíz tuberosa \nen los diferentes muestreos") + theme(plot.title = element_text(family = "Times New Roman",
size = rel(2),
vjust = 0.5, 
hjust = 0.5))+
  labs(x = "Días después de siembra", y = "g de peso fresco")+
  theme(axis.title.x = element_text(family = "Times New Roman", size = rel(1.5)), axis.title.y = element_text(family = "Times New Roman", size = rel(1.5)))+
  theme(legend.title = element_text(family = "Times New Roman"))+
  geom_text(aes(x=dds, y= mean+1.5, label=DS.PFRT),
            position = position_dodge(width = 1), size = 5)
G.PFRT

Peso seco de la raíz tuberosa

Análisis estadístico - Muestreo 1

# Datos - Peso seco de la raíz tuberosa - Muestreo 1

datos.PSRT.M1 <- data.frame(Var_M1$`Factor riego`, Var_M1$`Factor ácido ascórbico`, Var_M1$Tratamiento, Var_M1$`Peso seco de raíz tuberosa`)
colnames(datos.PSRT.M1) <- c("F_riego", "F_AA", "Tratamiento", "PSRT")
datos.PSRT.M1
datos.PSRT.M1$F_riego <- as.factor(datos.PSRT.M1$F_riego)
datos.PSRT.M1$F_AA <- as.factor(datos.PSRT.M1$F_AA)
str(datos.PSRT.M1)
## 'data.frame':    16 obs. of  4 variables:
##  $ F_riego    : Factor w/ 2 levels "0.5","1": 2 2 2 2 1 1 1 1 1 1 ...
##  $ F_AA       : Factor w/ 3 levels "0 ppm","1000 ppm",..: 1 1 1 1 1 1 1 1 3 3 ...
##  $ Tratamiento: chr  "Control" "Control" "Control" "Control" ...
##  $ PSRT       : num  0.36 0.44 0.39 0.47 0.28 0.29 0.23 0.31 0.3 0.36 ...
# Anova - Peso seco de la raíz tuberosa - Muestreo 1
A.PSRT.M1 <- aov(PSRT ~ F_riego*F_AA, data = datos.PSRT.M1)
summary(A.PSRT.M1)
##             Df  Sum Sq Mean Sq F value  Pr(>F)   
## F_riego      1 0.03797 0.03797  10.920 0.00629 **
## F_AA         2 0.01220 0.00610   1.754 0.21460   
## Residuals   12 0.04172 0.00348                   
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
  • Los dos tipos de riego, como factor independiente, tuvieron diferencias con una significancia del 99%.
# Prueba de normalidad de residuos
shapiro.test(A.PSRT.M1$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  A.PSRT.M1$residuals
## W = 0.96966, p-value = 0.833
  • El hecho de que no sea significativo (p-value > 0.05), representa que los datos tienen una distribución normal.
TukeyHSD(A.PSRT.M1)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = PSRT ~ F_riego * F_AA, data = datos.PSRT.M1)
## 
## $F_riego
##         diff        lwr       upr     p adj
## 1-0.5 0.1125 0.03832341 0.1866766 0.0062881
## 
## $F_AA
##                     diff        lwr        upr     p adj
## 1000 ppm-0 ppm    0.0575 -0.0388356 0.15383560 0.2861832
## 600 ppm-0 ppm    -0.0075 -0.1038356 0.08883560 0.9765449
## 600 ppm-1000 ppm -0.0650 -0.1762388 0.04623877 0.2999469
  • Los dos tipos de riego presenta diferencias significativas.
# Anova - PSRT - Muestreo 1 - Comparación entre los tratamientos

A.PSRT.M1.CT <- aov(PSRT ~ Tratamiento, data=datos.PSRT.M1)
summary(A.PSRT.M1.CT)
##             Df  Sum Sq  Mean Sq F value Pr(>F)  
## Tratamiento  3 0.05017 0.016723   4.809 0.0201 *
## Residuals   12 0.04172 0.003477                 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Tukey_A.PSRT.M1.CT <- TukeyHSD(A.PSRT.M1.CT)
Tukey_A.PSRT.M1.CT
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = PSRT ~ Tratamiento, data = datos.PSRT.M1)
## 
## $Tratamiento
##                                   diff          lwr        upr     p adj
## 50 + AS 1000ppm-50 - AS         0.0700 -0.053790776 0.19379078 0.3753766
## 50 + AS 600ppm-50 - AS          0.0050 -0.118790776 0.12879078 0.9993473
## Control-50 - AS                 0.1375  0.013709224 0.26129078 0.0282163
## 50 + AS 600ppm-50 + AS 1000ppm -0.0650 -0.188790776 0.05879078 0.4357590
## Control-50 + AS 1000ppm         0.0675 -0.056290776 0.19129078 0.4049345
## Control-50 + AS 600ppm          0.1325  0.008709224 0.25629078 0.0347928
  • Podemos observar que los tratamientos amarillo (50 - AS) y azul (50 + AS 600ppm), tuvieron diferencias significativas con respecto al control.
A.PSRT.M1.DT <- duncan.test(A.PSRT.M1.CT, 'Tratamiento', console = T)
## 
## Study: A.PSRT.M1.CT ~ "Tratamiento"
## 
## Duncan's new multiple range test
## for PSRT 
## 
## Mean Square Error:  0.003477083 
## 
## Tratamiento,  means
## 
##                   PSRT        std r        se  Min  Max    Q25   Q50    Q75
## 50 - AS         0.2775 0.03403430 4 0.0294834 0.23 0.31 0.2675 0.285 0.2950
## 50 + AS 1000ppm 0.3475 0.06849574 4 0.0294834 0.27 0.43 0.3075 0.345 0.3850
## 50 + AS 600ppm  0.2825 0.07500000 4 0.0294834 0.18 0.36 0.2625 0.295 0.3150
## Control         0.4150 0.04932883 4 0.0294834 0.36 0.47 0.3825 0.415 0.4475
## 
## Alpha: 0.05 ; DF Error: 12 
## 
## Critical Range
##          2          3          4 
## 0.09084739 0.09509114 0.09766238 
## 
## Means with the same letter are not significantly different.
## 
##                   PSRT groups
## Control         0.4150      a
## 50 + AS 1000ppm 0.3475     ab
## 50 + AS 600ppm  0.2825      b
## 50 - AS         0.2775      b
A.PSRT.M1.DT
## $statistics
##       MSerror Df     Mean       CV
##   0.003477083 12 0.330625 17.83495
## 
## $parameters
##     test      name.t ntr alpha
##   Duncan Tratamiento   4  0.05
## 
## $duncan
##      Table CriticalRange
## 2 3.081307    0.09084739
## 3 3.225244    0.09509114
## 4 3.312453    0.09766238
## 
## $means
##                   PSRT        std r        se  Min  Max    Q25   Q50    Q75
## 50 - AS         0.2775 0.03403430 4 0.0294834 0.23 0.31 0.2675 0.285 0.2950
## 50 + AS 1000ppm 0.3475 0.06849574 4 0.0294834 0.27 0.43 0.3075 0.345 0.3850
## 50 + AS 600ppm  0.2825 0.07500000 4 0.0294834 0.18 0.36 0.2625 0.295 0.3150
## Control         0.4150 0.04932883 4 0.0294834 0.36 0.47 0.3825 0.415 0.4475
## 
## $comparison
## NULL
## 
## $groups
##                   PSRT groups
## Control         0.4150      a
## 50 + AS 1000ppm 0.3475     ab
## 50 + AS 600ppm  0.2825      b
## 50 - AS         0.2775      b
## 
## attr(,"class")
## [1] "group"

Análisis estadístico - Muestreo 2

# Datos - Peso seco de la raíz tuberosa - Muestreo 2

datos.PSRT.M2 <- data.frame(Var_M2$`Factor riego`, Var_M2$`Factor ácido ascórbico`, Var_M2$Tratamiento, Var_M2$`Peso seco de raíz tuberosa`)
colnames(datos.PSRT.M2) <- c("F_riego", "F_AA", "Tratamiento", "PSRT")
datos.PSRT.M2
datos.PSRT.M2$F_riego <- as.factor(datos.PSRT.M2$F_riego)
datos.PSRT.M2$F_AA <- as.factor(datos.PSRT.M2$F_AA)
str(datos.PSRT.M2)
## 'data.frame':    16 obs. of  4 variables:
##  $ F_riego    : Factor w/ 2 levels "0.5","1": 2 2 2 2 1 1 1 1 1 1 ...
##  $ F_AA       : Factor w/ 3 levels "0 ppm","1000 ppm",..: 1 1 1 1 1 1 1 1 3 3 ...
##  $ Tratamiento: chr  "Control" "Control" "Control" "Control" ...
##  $ PSRT       : num  0.33 0.71 0.87 0.97 0.51 0.41 0.61 0.4 0.52 0.52 ...
# Anova - Peso seco de la raíz tuberosa - Muestreo 2
A.PSRT.M2 <- aov(PSRT ~ F_riego*F_AA, data = datos.PSRT.M2)
summary(A.PSRT.M2)
##             Df Sum Sq Mean Sq F value Pr(>F)  
## F_riego      1 0.1633 0.16333   4.958 0.0459 *
## F_AA         2 0.0037 0.00186   0.056 0.9454  
## Residuals   12 0.3954 0.03295                 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
  • Los dos tipos de riego, como factor independiente, tuvieron diferencias con una significancia del 95%.
# Prueba de normalidad de residuos
shapiro.test(A.PSRT.M2$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  A.PSRT.M2$residuals
## W = 0.94092, p-value = 0.3605
  • El hecho de que no sea significativo (p-value > 0.05), representa que los datos tienen una distribución normal.
TukeyHSD(A.PSRT.M2)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = PSRT ~ F_riego * F_AA, data = datos.PSRT.M2)
## 
## $F_riego
##            diff         lwr       upr     p adj
## 1-0.5 0.2333333 0.005005139 0.4616615 0.0458927
## 
## $F_AA
##                         diff        lwr       upr     p adj
## 1000 ppm-0 ppm   -0.01708333 -0.3136208 0.2794541 0.9870757
## 600 ppm-0 ppm     0.02541667 -0.2711208 0.3219541 0.9716541
## 600 ppm-1000 ppm  0.04250000 -0.2999119 0.3849119 0.9416378
  • Los dos tipos de riego presenta diferencias significativas.
# Anova - PSRT - Muestreo 2 - Comparación entre los tratamientos

A.PSRT.M2.CT <- aov(PSRT ~ Tratamiento, data=datos.PSRT.M2)
summary(A.PSRT.M2.CT)
##             Df Sum Sq Mean Sq F value Pr(>F)
## Tratamiento  3 0.1670 0.05568    1.69  0.222
## Residuals   12 0.3953 0.03295
Tukey_A.PSRT.M2.CT <- TukeyHSD(A.PSRT.M2.CT)
Tukey_A.PSRT.M2.CT
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = PSRT ~ Tratamiento, data = datos.PSRT.M2)
## 
## $Tratamiento
##                                   diff        lwr       upr     p adj
## 50 + AS 1000ppm-50 - AS        -0.0150 -0.3960491 0.3660491 0.9993955
## 50 + AS 600ppm-50 - AS          0.0275 -0.3535491 0.4085491 0.9963309
## Control-50 - AS                 0.2375 -0.1435491 0.6185491 0.2984441
## 50 + AS 600ppm-50 + AS 1000ppm  0.0425 -0.3385491 0.4235491 0.9868498
## Control-50 + AS 1000ppm         0.2525 -0.1285491 0.6335491 0.2528907
## Control-50 + AS 600ppm          0.2100 -0.1710491 0.5910491 0.3962598
  • Podemos observar que ninguna de los tratamientos tienen diferencias signifciativas con respecto a su control.
A.PSRT.M2.DT <- duncan.test(A.PSRT.M2.CT, 'Tratamiento', console = T)
## 
## Study: A.PSRT.M2.CT ~ "Tratamiento"
## 
## Duncan's new multiple range test
## for PSRT 
## 
## Mean Square Error:  0.03294583 
## 
## Tratamiento,  means
## 
##                   PSRT        std r         se  Min  Max    Q25  Q50    Q75
## 50 - AS         0.4825 0.09844626 4 0.09075494 0.40 0.61 0.4075 0.46 0.5350
## 50 + AS 1000ppm 0.4675 0.20451161 4 0.09075494 0.22 0.65 0.3400 0.50 0.6275
## 50 + AS 600ppm  0.5100 0.03464102 4 0.09075494 0.46 0.54 0.5050 0.52 0.5250
## Control         0.7200 0.28118796 4 0.09075494 0.33 0.97 0.6150 0.79 0.8950
## 
## Alpha: 0.05 ; DF Error: 12 
## 
## Critical Range
##         2         3         4 
## 0.2796438 0.2927068 0.3006215 
## 
## Means with the same letter are not significantly different.
## 
##                   PSRT groups
## Control         0.7200      a
## 50 + AS 600ppm  0.5100      a
## 50 - AS         0.4825      a
## 50 + AS 1000ppm 0.4675      a
A.PSRT.M2.DT
## $statistics
##      MSerror Df  Mean       CV
##   0.03294583 12 0.545 33.30456
## 
## $parameters
##     test      name.t ntr alpha
##   Duncan Tratamiento   4  0.05
## 
## $duncan
##      Table CriticalRange
## 2 3.081307     0.2796438
## 3 3.225244     0.2927068
## 4 3.312453     0.3006215
## 
## $means
##                   PSRT        std r         se  Min  Max    Q25  Q50    Q75
## 50 - AS         0.4825 0.09844626 4 0.09075494 0.40 0.61 0.4075 0.46 0.5350
## 50 + AS 1000ppm 0.4675 0.20451161 4 0.09075494 0.22 0.65 0.3400 0.50 0.6275
## 50 + AS 600ppm  0.5100 0.03464102 4 0.09075494 0.46 0.54 0.5050 0.52 0.5250
## Control         0.7200 0.28118796 4 0.09075494 0.33 0.97 0.6150 0.79 0.8950
## 
## $comparison
## NULL
## 
## $groups
##                   PSRT groups
## Control         0.7200      a
## 50 + AS 600ppm  0.5100      a
## 50 - AS         0.4825      a
## 50 + AS 1000ppm 0.4675      a
## 
## attr(,"class")
## [1] "group"

Análisis estadístico - Muestreo 3

# Datos - Peso seco de la raíz tuberosa - Muestreo 3

datos.PSRT.M3 <- data.frame(Var_M3$`Factor riego`, Var_M3$`Factor ácido ascórbico`, Var_M3$Tratamiento, Var_M3$`Peso seco de raíz tuberosa`)
colnames(datos.PSRT.M3) <- c("F_riego", "F_AA", "Tratamiento", "PSRT")
datos.PSRT.M3
datos.PSRT.M3$F_riego <- as.factor(datos.PSRT.M3$F_riego)
datos.PSRT.M3$F_AA <- as.factor(datos.PSRT.M3$F_AA)
str(datos.PSRT.M3)
## 'data.frame':    16 obs. of  4 variables:
##  $ F_riego    : Factor w/ 2 levels "0.5","1": 2 2 2 2 1 1 1 1 1 1 ...
##  $ F_AA       : Factor w/ 3 levels "0 ppm","1000 ppm",..: 1 1 1 1 1 1 1 1 3 3 ...
##  $ Tratamiento: chr  "Control" "Control" "Control" "Control" ...
##  $ PSRT       : num  1.381 1.488 0.813 1.193 0.682 ...
# Anova - Peso seco de la raíz tuberosa - Muestreo 3
A.PSRT.M3 <- aov(PSRT ~ F_riego*F_AA, data = datos.PSRT.M3)
summary(A.PSRT.M3)
##             Df Sum Sq Mean Sq F value   Pr(>F)    
## F_riego      1 0.8990  0.8990  33.466 8.67e-05 ***
## F_AA         2 0.0448  0.0224   0.834    0.458    
## Residuals   12 0.3224  0.0269                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
  • Los dos tipos de riego, como factor independiente, tuvieron diferencias con una significancia del 99.9%.
# Prueba de normalidad de residuos
shapiro.test(A.PSRT.M3$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  A.PSRT.M3$residuals
## W = 0.90457, p-value = 0.09516
  • El hecho de que no sea significativo (p-value > 0.05), representa que los datos tienen una distribución normal.
TukeyHSD(A.PSRT.M3)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = PSRT ~ F_riego * F_AA, data = datos.PSRT.M3)
## 
## $F_riego
##            diff       lwr       upr    p adj
## 1-0.5 0.5474167 0.3412416 0.7535917 8.67e-05
## 
## $F_AA
##                         diff       lwr       upr     p adj
## 1000 ppm-0 ppm    0.10345833 -0.164308 0.3712247 0.5725280
## 600 ppm-0 ppm    -0.03329167 -0.301058 0.2344747 0.9414457
## 600 ppm-1000 ppm -0.13675000 -0.445940 0.1724400 0.4866046
  • Los dos tipos de riego presenta diferencias significativas.
# Anova - PSRT - Muestreo 3 - Comparación entre los tratamientos

A.PSRT.M3.CT <- aov(PSRT ~ Tratamiento, data=datos.PSRT.M3)
summary(A.PSRT.M3.CT)
##             Df Sum Sq Mean Sq F value   Pr(>F)    
## Tratamiento  3 0.9438 0.31459   11.71 0.000706 ***
## Residuals   12 0.3224 0.02686                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Tukey_A.PSRT.M3.CT <- TukeyHSD(A.PSRT.M3.CT)
Tukey_A.PSRT.M3.CT
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = PSRT ~ Tratamiento, data = datos.PSRT.M3)
## 
## $Tratamiento
##                                    diff        lwr       upr     p adj
## 50 + AS 1000ppm-50 - AS         0.12100 -0.2230785 0.4650785 0.7279285
## 50 + AS 600ppm-50 - AS         -0.01575 -0.3598285 0.3283285 0.9990517
## Control-50 - AS                 0.58250  0.2384215 0.9265785 0.0014559
## 50 + AS 600ppm-50 + AS 1000ppm -0.13675 -0.4808285 0.2073285 0.6500203
## Control-50 + AS 1000ppm         0.46150  0.1174215 0.8055785 0.0085228
## Control-50 + AS 600ppm          0.59825  0.2541715 0.9423285 0.0011668
  • Podemos observar que todos los tratamientos tienen diferencias signifciativas con respecto a su control.
A.PSRT.M3.DT <- duncan.test(A.PSRT.M3.CT, 'Tratamiento', console = T)
## 
## Study: A.PSRT.M3.CT ~ "Tratamiento"
## 
## Duncan's new multiple range test
## for PSRT 
## 
## Mean Square Error:  0.02686294 
## 
## Tratamiento,  means
## 
##                    PSRT        std r         se   Min   Max    Q25    Q50
## 50 - AS         0.63625 0.10607977 4 0.08194958 0.479 0.711 0.6245 0.6775
## 50 + AS 1000ppm 0.75725 0.08269371 4 0.08194958 0.674 0.862 0.7025 0.7465
## 50 + AS 600ppm  0.62050 0.03635473 4 0.08194958 0.577 0.664 0.6025 0.6205
## Control         1.21875 0.29671353 4 0.08194958 0.813 1.488 1.0980 1.2870
##                     Q75
## 50 - AS         0.68925
## 50 + AS 1000ppm 0.80125
## 50 + AS 600ppm  0.63850
## Control         1.40775
## 
## Alpha: 0.05 ; DF Error: 12 
## 
## Critical Range
##         2         3         4 
## 0.2525118 0.2643074 0.2714541 
## 
## Means with the same letter are not significantly different.
## 
##                    PSRT groups
## Control         1.21875      a
## 50 + AS 1000ppm 0.75725      b
## 50 - AS         0.63625      b
## 50 + AS 600ppm  0.62050      b
A.PSRT.M3.DT
## $statistics
##      MSerror Df      Mean       CV
##   0.02686294 12 0.8081875 20.27984
## 
## $parameters
##     test      name.t ntr alpha
##   Duncan Tratamiento   4  0.05
## 
## $duncan
##      Table CriticalRange
## 2 3.081307     0.2525118
## 3 3.225244     0.2643074
## 4 3.312453     0.2714541
## 
## $means
##                    PSRT        std r         se   Min   Max    Q25    Q50
## 50 - AS         0.63625 0.10607977 4 0.08194958 0.479 0.711 0.6245 0.6775
## 50 + AS 1000ppm 0.75725 0.08269371 4 0.08194958 0.674 0.862 0.7025 0.7465
## 50 + AS 600ppm  0.62050 0.03635473 4 0.08194958 0.577 0.664 0.6025 0.6205
## Control         1.21875 0.29671353 4 0.08194958 0.813 1.488 1.0980 1.2870
##                     Q75
## 50 - AS         0.68925
## 50 + AS 1000ppm 0.80125
## 50 + AS 600ppm  0.63850
## Control         1.40775
## 
## $comparison
## NULL
## 
## $groups
##                    PSRT groups
## Control         1.21875      a
## 50 + AS 1000ppm 0.75725      b
## 50 - AS         0.63625      b
## 50 + AS 600ppm  0.62050      b
## 
## attr(,"class")
## [1] "group"

Análisis estadístico - Muestreo 4

# Datos - Peso seco de la raíz tuberosa - Muestreo 4

datos.PSRT.M4 <- data.frame(Var_M4$`Factor riego`, Var_M4$`Factor ácido ascórbico`, Var_M4$Tratamiento, Var_M4$`Peso seco de raíz tuberosa`)
colnames(datos.PSRT.M4) <- c("F_riego", "F_AA", "Tratamiento", "PSRT")
datos.PSRT.M4
datos.PSRT.M4$F_riego <- as.factor(datos.PSRT.M4$F_riego)
datos.PSRT.M4$F_AA <- as.factor(datos.PSRT.M4$F_AA)
str(datos.PSRT.M4)
## 'data.frame':    16 obs. of  4 variables:
##  $ F_riego    : Factor w/ 2 levels "0.5","1": 2 2 2 2 1 1 1 1 1 1 ...
##  $ F_AA       : Factor w/ 3 levels "0 ppm","1000 ppm",..: 1 1 1 1 1 1 1 1 3 3 ...
##  $ Tratamiento: chr  "Control" "Control" "Control" "Control" ...
##  $ PSRT       : num  1.81 1.69 1.57 1.55 1.02 ...
# Anova - Peso seco de la raíz tuberosa - Muestreo 4
A.PSRT.M4 <- aov(PSRT ~ F_riego*F_AA, data = datos.PSRT.M4)
summary(A.PSRT.M4)
##             Df Sum Sq Mean Sq F value   Pr(>F)    
## F_riego      1 1.9341  1.9341  61.192 4.73e-06 ***
## F_AA         2 0.0334  0.0167   0.529    0.603    
## Residuals   12 0.3793  0.0316                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
  • Los dos tipos de riego, como factor independiente, tuvieron diferencias con una significancia del 99.9%..
# Prueba de normalidad de residuos
shapiro.test(A.PSRT.M4$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  A.PSRT.M4$residuals
## W = 0.94074, p-value = 0.3582
  • El hecho de que no sea significativo (p-value > 0.05), representa que los datos tienen una distribución normal.
TukeyHSD(A.PSRT.M4)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = PSRT ~ F_riego * F_AA, data = datos.PSRT.M4)
## 
## $F_riego
##            diff       lwr      upr   p adj
## 1-0.5 0.8029417 0.5792989 1.026584 4.7e-06
## 
## $F_AA
##                          diff        lwr       upr     p adj
## 1000 ppm-0 ppm    0.004395833 -0.2860565 0.2948481 0.9991017
## 600 ppm-0 ppm    -0.096979167 -0.3874315 0.1934731 0.6560492
## 600 ppm-1000 ppm -0.101375000 -0.4367604 0.2340104 0.7063045
  • Los dos tipos de riego son completamente distintos.
# Anova - PSRT - Muestreo 4 - Comparación entre los tratamientos

A.PSRT.M4.CT <- aov(PSRT ~ Tratamiento, data=datos.PSRT.M4)
summary(A.PSRT.M4.CT)
##             Df Sum Sq Mean Sq F value   Pr(>F)    
## Tratamiento  3 1.9676  0.6559   20.75 4.85e-05 ***
## Residuals   12 0.3793  0.0316                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Tukey_A.PSRT.M4.CT <- TukeyHSD(A.PSRT.M4.CT)
Tukey_A.PSRT.M4.CT
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = PSRT ~ Tratamiento, data = datos.PSRT.M4)
## 
## $Tratamiento
##                                     diff        lwr       upr     p adj
## 50 + AS 1000ppm-50 - AS        -0.018750 -0.3919798 0.3544798 0.9987487
## 50 + AS 600ppm-50 - AS         -0.120125 -0.4933548 0.2531048 0.7762726
## Control-50 - AS                 0.756650  0.3834202 1.1298798 0.0003048
## 50 + AS 600ppm-50 + AS 1000ppm -0.101375 -0.4746048 0.2718548 0.8502160
## Control-50 + AS 1000ppm         0.775400  0.4021702 1.1486298 0.0002436
## Control-50 + AS 600ppm          0.876775  0.5035452 1.2500048 0.0000762
  • Podemos observar que todos los tratamientos tienen diferencias signifciativas con respecto a su control.
A.PSRT.M4.DT <- duncan.test(A.PSRT.M4.CT, 'Tratamiento', console = T)
## 
## Study: A.PSRT.M4.CT ~ "Tratamiento"
## 
## Duncan's new multiple range test
## for PSRT 
## 
## Mean Square Error:  0.03160757 
## 
## Tratamiento,  means
## 
##                     PSRT       std r         se    Min    Max      Q25     Q50
## 50 - AS         0.898900 0.2244063 4 0.08889259 0.6096 1.1230 0.786000 0.93150
## 50 + AS 1000ppm 0.880150 0.2141000 4 0.08889259 0.5665 1.0475 0.845575 0.95330
## 50 + AS 600ppm  0.778775 0.1256403 4 0.08889259 0.6533 0.9441 0.701150 0.75885
## Control         1.655550 0.1201990 4 0.08889259 1.5491 1.8087 1.565600 1.63220
##                      Q75
## 50 - AS         1.044400
## 50 + AS 1000ppm 0.987875
## 50 + AS 600ppm  0.836475
## Control         1.722150
## 
## Alpha: 0.05 ; DF Error: 12 
## 
## Critical Range
##         2         3         4 
## 0.2739053 0.2867002 0.2944525 
## 
## Means with the same letter are not significantly different.
## 
##                     PSRT groups
## Control         1.655550      a
## 50 - AS         0.898900      b
## 50 + AS 1000ppm 0.880150      b
## 50 + AS 600ppm  0.778775      b
A.PSRT.M4.DT
## $statistics
##      MSerror Df     Mean       CV
##   0.03160757 12 1.053344 16.87817
## 
## $parameters
##     test      name.t ntr alpha
##   Duncan Tratamiento   4  0.05
## 
## $duncan
##      Table CriticalRange
## 2 3.081307     0.2739053
## 3 3.225244     0.2867002
## 4 3.312453     0.2944525
## 
## $means
##                     PSRT       std r         se    Min    Max      Q25     Q50
## 50 - AS         0.898900 0.2244063 4 0.08889259 0.6096 1.1230 0.786000 0.93150
## 50 + AS 1000ppm 0.880150 0.2141000 4 0.08889259 0.5665 1.0475 0.845575 0.95330
## 50 + AS 600ppm  0.778775 0.1256403 4 0.08889259 0.6533 0.9441 0.701150 0.75885
## Control         1.655550 0.1201990 4 0.08889259 1.5491 1.8087 1.565600 1.63220
##                      Q75
## 50 - AS         1.044400
## 50 + AS 1000ppm 0.987875
## 50 + AS 600ppm  0.836475
## Control         1.722150
## 
## $comparison
## NULL
## 
## $groups
##                     PSRT groups
## Control         1.655550      a
## 50 - AS         0.898900      b
## 50 + AS 1000ppm 0.880150      b
## 50 + AS 600ppm  0.778775      b
## 
## attr(,"class")
## [1] "group"

Análisis descriptivo - Peso seco de la raíz tuberosa

# Datos - Gráfico - Peso seco de la raíz tuberosa

Datos.G.PSRT <- data.frame(factor(Tratamientos, ordered = TRUE, levels = c("Control", "50 - AS", "50 + AS 600ppm", "50 + AS 1000ppm")), Var_M1$`Peso seco de raíz tuberosa`, Var_M2$`Peso seco de raíz tuberosa`, Var_M3$`Peso seco de raíz tuberosa`, Var_M4$`Peso seco de raíz tuberosa`)
colnames(Datos.G.PSRT) <- c("Tratamientos", "31", "38","45", "52")
Datos.G.PSRT
# Unificar la variable respuesta en una sola columna
df.long.PSRT = gather(Datos.G.PSRT, dds, PSRT, 2:5)
df.long.PSRT
# Diferencias significativas con el control
#          M1  M2  M3  M4
DS.PSRT <- c("a", "a", "a", "a",  #T1
           "b*", "a", "b*", "b*", #T2
           "b*", "a", "b*", "b*",  #T3
           "ab", "a", "b*", "b*") #T4

# Media y desviación estandar de la media de los tratamientos en los diferentes muestreos.
df.sumzd.PSRT = group_by(df.long.PSRT, Tratamientos, dds, ) %>% summarise(mean = mean(PSRT), sd = sd(PSRT))
## `summarise()` has grouped output by 'Tratamientos'. You can override using the
## `.groups` argument.
# Con diferencias significativas de los tratamientos con su control
df.sumzd.PSRT.ds <- data.frame(df.sumzd.PSRT, DS.PSRT)
df.sumzd.PSRT.ds
G.PSRT = ggplot(df.sumzd.PSRT, aes(x=dds, y=mean, fill=Tratamientos))+
  geom_bar(stat = "identity", position = "dodge", color = "black", alpha = 0.5)+
  geom_errorbar(aes(ymin=mean-sd, ymax=mean+sd), width = 0.25, size=0.5, position = position_dodge(0.9), alpha = 0.5)+
  scale_fill_manual(values=c("red", "yellow", "blue", "green")) +
  theme_minimal()+
  ggtitle("Peso seco promedio de la raíz tuberosa \nen los diferentes muestreos") + theme(plot.title = element_text(family = "Times New Roman",
size = rel(1.5),
vjust = 0.5, 
hjust = 0.5))+
  labs(x = "Días después de siembra", y = "g")+
  theme(axis.title.x = element_text(family = "Times New Roman"), axis.title.y = element_text(family = "Times New Roman"))+
  theme(legend.title = element_text(family = "Times New Roman"))+
  geom_text(aes(x=dds, y= mean+0.4, label=DS.PSRT),
            position = position_dodge(width = 1), size = 5)
G.PSRT

Área bajo el dosel

Análisis estadístico - Muestreo 1

# Datos - Área bajo el dosel - Muestreo 1

datos.ABD.M1 <- data.frame(Var_M1$`Factor riego`, Var_M1$`Factor ácido ascórbico`, Var_M1$Tratamiento, Var_M1$`Área bajo el dosel (cm2)`)
colnames(datos.ABD.M1) <- c("F_riego", "F_AA", "Tratamiento", "ABD")
datos.ABD.M1
datos.ABD.M1$F_riego <- as.factor(datos.ABD.M1$F_riego)
datos.ABD.M1$F_AA <- as.factor(datos.ABD.M1$F_AA)
str(datos.ABD.M1)
## 'data.frame':    16 obs. of  4 variables:
##  $ F_riego    : Factor w/ 2 levels "0.5","1": 2 2 2 2 1 1 1 1 1 1 ...
##  $ F_AA       : Factor w/ 3 levels "0 ppm","1000 ppm",..: 1 1 1 1 1 1 1 1 3 3 ...
##  $ Tratamiento: chr  "Control" "Control" "Control" "Control" ...
##  $ ABD        : num  89.5 146.8 103.6 94.8 35 ...
# Anova - Área bajo el dosel - Muestreo 1
A.ABD.M1 <- aov(ABD ~ F_riego*F_AA, data = datos.ABD.M1)
summary(A.ABD.M1)
##             Df Sum Sq Mean Sq F value   Pr(>F)    
## F_riego      1   9512    9512   21.52 0.000572 ***
## F_AA         2     17       9    0.02 0.980609    
## Residuals   12   5305     442                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
  • Los dos tipos de riego, como factor independiente, tuvieron diferencias con una significancia del 99.9%.
# Prueba de normalidad de residuos
shapiro.test(A.ABD.M1$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  A.ABD.M1$residuals
## W = 0.92859, p-value = 0.2315
  • El hecho de que no sea significativo (p-value > 0.05), representa que los datos tienen una distribución normal.
TukeyHSD(A.ABD.M1)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = ABD ~ F_riego * F_AA, data = datos.ABD.M1)
## 
## $F_riego
##          diff      lwr      upr     p adj
## 1-0.5 56.3075 29.85853 82.75647 0.0005717
## 
## $F_AA
##                     diff       lwr      upr     p adj
## 1000 ppm-0 ppm   -1.6875 -36.03766 32.66266 0.9905821
## 600 ppm-0 ppm    -1.7125 -36.06266 32.63766 0.9903026
## 600 ppm-1000 ppm -0.0250 -39.68914 39.63914 0.9999984
  • Los dos tipos de riego presenta diferencias significativas.
# Anova - ABD - Muestreo 1 - Comparación entre los tratamientos

A.ABD.M1.CT <- aov(ABD ~ Tratamiento, data=datos.ABD.M1)
summary(A.ABD.M1.CT)
##             Df Sum Sq Mean Sq F value  Pr(>F)   
## Tratamiento  3   9529    3176   7.185 0.00511 **
## Residuals   12   5305     442                   
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Tukey_A.ABD.M1.CT <- TukeyHSD(A.ABD.M1.CT)
Tukey_A.ABD.M1.CT
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = ABD ~ Tratamiento, data = datos.ABD.M1)
## 
## $Tratamiento
##                                   diff       lwr       upr     p adj
## 50 + AS 1000ppm-50 - AS        -2.5375 -46.67728  41.60228 0.9981309
## 50 + AS 600ppm-50 - AS         -2.5625 -46.70228  41.57728 0.9980756
## Control-50 - AS                54.6075  10.46772  98.74728 0.0146180
## 50 + AS 600ppm-50 + AS 1000ppm -0.0250 -44.16478  44.11478 1.0000000
## Control-50 + AS 1000ppm        57.1450  13.00522 101.28478 0.0108464
## Control-50 + AS 600ppm         57.1700  13.03022 101.30978 0.0108146
  • Podemos observar que todos los tratamientos tienen diferencias signifciativas con respecto a su control.
A.ABD.M1.DT <- duncan.test(A.ABD.M1.CT, 'Tratamiento', console = T)
## 
## Study: A.ABD.M1.CT ~ "Tratamiento"
## 
## Duncan's new multiple range test
## for ABD 
## 
## Mean Square Error:  442.078 
## 
## Tratamiento,  means
## 
##                      ABD      std r       se   Min    Max     Q25    Q50
## 50 - AS          54.0775 16.75190 4 10.51283 34.96  71.77 43.0750 54.790
## 50 + AS 1000ppm  51.5400 23.40818 4 10.51283 26.86  79.02 35.5150 50.140
## 50 + AS 600ppm   51.5150 16.14043 4 10.51283 32.80  68.49 41.1775 52.385
## Control         108.6850 26.06204 4 10.51283 89.53 146.80 93.5050 99.205
##                      Q75
## 50 - AS          65.7925
## 50 + AS 1000ppm  66.1650
## 50 + AS 600ppm   62.7225
## Control         114.3850
## 
## Alpha: 0.05 ; DF Error: 12 
## 
## Critical Range
##        2        3        4 
## 32.39324 33.90642 34.82324 
## 
## Means with the same letter are not significantly different.
## 
##                      ABD groups
## Control         108.6850      a
## 50 - AS          54.0775      b
## 50 + AS 1000ppm  51.5400      b
## 50 + AS 600ppm   51.5150      b
A.ABD.M1.DT
## $statistics
##   MSerror Df     Mean       CV
##   442.078 12 66.45437 31.63923
## 
## $parameters
##     test      name.t ntr alpha
##   Duncan Tratamiento   4  0.05
## 
## $duncan
##      Table CriticalRange
## 2 3.081307      32.39324
## 3 3.225244      33.90642
## 4 3.312453      34.82324
## 
## $means
##                      ABD      std r       se   Min    Max     Q25    Q50
## 50 - AS          54.0775 16.75190 4 10.51283 34.96  71.77 43.0750 54.790
## 50 + AS 1000ppm  51.5400 23.40818 4 10.51283 26.86  79.02 35.5150 50.140
## 50 + AS 600ppm   51.5150 16.14043 4 10.51283 32.80  68.49 41.1775 52.385
## Control         108.6850 26.06204 4 10.51283 89.53 146.80 93.5050 99.205
##                      Q75
## 50 - AS          65.7925
## 50 + AS 1000ppm  66.1650
## 50 + AS 600ppm   62.7225
## Control         114.3850
## 
## $comparison
## NULL
## 
## $groups
##                      ABD groups
## Control         108.6850      a
## 50 - AS          54.0775      b
## 50 + AS 1000ppm  51.5400      b
## 50 + AS 600ppm   51.5150      b
## 
## attr(,"class")
## [1] "group"

Análisis estadístico - Muestreo 2

# Datos - Área bajo el dosel - Muestreo 1

datos.ABD.M2 <- data.frame(Var_M2$`Factor riego`, Var_M2$`Factor ácido ascórbico`, Var_M2$Tratamiento, Var_M2$`Área bajo el dosel (cm2)`)
colnames(datos.ABD.M2) <- c("F_riego", "F_AA", "Tratamiento", "ABD")
datos.ABD.M2
datos.ABD.M2$F_riego <- as.factor(datos.ABD.M2$F_riego)
datos.ABD.M2$F_AA <- as.factor(datos.ABD.M2$F_AA)
str(datos.ABD.M2)
## 'data.frame':    16 obs. of  4 variables:
##  $ F_riego    : Factor w/ 2 levels "0.5","1": 2 2 2 2 1 1 1 1 1 1 ...
##  $ F_AA       : Factor w/ 3 levels "0 ppm","1000 ppm",..: 1 1 1 1 1 1 1 1 3 3 ...
##  $ Tratamiento: chr  "Control" "Control" "Control" "Control" ...
##  $ ABD        : num  119 177 215 194 128 ...
# Anova - Área bajo el dosel - Muestreo 2
A.ABD.M2 <- aov(ABD ~ F_riego*F_AA, data = datos.ABD.M2)
summary(A.ABD.M2)
##             Df Sum Sq Mean Sq F value   Pr(>F)    
## F_riego      1  16111   16111  19.808 0.000792 ***
## F_AA         2   1121     560   0.689 0.520956    
## Residuals   12   9761     813                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
  • Los dos tipos de riego, como factor independiente, tuvieron diferencias con una significancia del 99.9%.
# Prueba de normalidad de residuos
shapiro.test(A.ABD.M2$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  A.ABD.M2$residuals
## W = 0.92191, p-value = 0.1811
  • El hecho de que no sea significativo (p-value > 0.05), representa que los datos tienen una distribución normal.
TukeyHSD(A.ABD.M2)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = ABD ~ F_riego * F_AA, data = datos.ABD.M2)
## 
## $F_riego
##           diff      lwr      upr    p adj
## 1-0.5 73.28333 37.40714 109.1595 0.000792
## 
## $F_AA
##                       diff       lwr      upr     p adj
## 1000 ppm-0 ppm    11.74667 -34.84694 58.34028 0.7834004
## 600 ppm-0 ppm    -11.92333 -58.51694 34.67028 0.7777510
## 600 ppm-1000 ppm -23.67000 -77.47166 30.13166 0.4900891
  • Los dos tipos de riego presenta diferencias significativas.
# Anova - ABD - Muestreo 2 - Comparación entre los tratamientos

A.ABD.M2.CT <- aov(ABD ~ Tratamiento, data=datos.ABD.M2)
summary(A.ABD.M2.CT)
##             Df Sum Sq Mean Sq F value  Pr(>F)   
## Tratamiento  3  17232    5744   7.062 0.00544 **
## Residuals   12   9761     813                   
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Tukey_A.ABD.M2.CT <- TukeyHSD(A.ABD.M2.CT)
Tukey_A.ABD.M2.CT
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = ABD ~ Tratamiento, data = datos.ABD.M2)
## 
## $Tratamiento
##                                    diff        lwr       upr     p adj
## 50 + AS 1000ppm-50 - AS         11.7025 -48.170059  71.57506 0.9361157
## 50 + AS 600ppm-50 - AS         -11.9675 -71.840059  47.90506 0.9321405
## Control-50 - AS                 73.1950  13.322441 133.06756 0.0157742
## 50 + AS 600ppm-50 + AS 1000ppm -23.6700 -83.542559  36.20256 0.6536464
## Control-50 + AS 1000ppm         61.4925   1.619941 121.36506 0.0435111
## Control-50 + AS 600ppm          85.1625  25.289941 145.03506 0.0056189
  • Podemos observar que todos los tratamientos tienen diferencias signifciativas con respecto a su control.
A.ABD.M2.DT <- duncan.test(A.ABD.M2.CT, 'Tratamiento', console = T)
## 
## Study: A.ABD.M2.CT ~ "Tratamiento"
## 
## Duncan's new multiple range test
## for ABD 
## 
## Mean Square Error:  813.3813 
## 
## Tratamiento,  means
## 
##                      ABD      std r       se    Min    Max      Q25     Q50
## 50 - AS         103.3375 31.19703 4 14.25992  59.45 128.38  92.1425 112.760
## 50 + AS 1000ppm 115.0400 16.41308 4 14.25992  93.30 133.18 110.9550 116.840
## 50 + AS 600ppm   91.3700 17.09741 4 14.25992  70.14 111.58  84.2400  91.880
## Control         176.5325 41.45552 4 14.25992 118.92 215.44 162.6975 185.885
##                     Q75
## 50 - AS         123.955
## 50 + AS 1000ppm 120.925
## 50 + AS 600ppm   99.010
## Control         199.720
## 
## Alpha: 0.05 ; DF Error: 12 
## 
## Critical Range
##        2        3        4 
## 43.93919 45.99171 47.23531 
## 
## Means with the same letter are not significantly different.
## 
##                      ABD groups
## Control         176.5325      a
## 50 + AS 1000ppm 115.0400      b
## 50 - AS         103.3375      b
## 50 + AS 600ppm   91.3700      b
A.ABD.M2.DT
## $statistics
##    MSerror Df   Mean      CV
##   813.3813 12 121.57 23.4596
## 
## $parameters
##     test      name.t ntr alpha
##   Duncan Tratamiento   4  0.05
## 
## $duncan
##      Table CriticalRange
## 2 3.081307      43.93919
## 3 3.225244      45.99171
## 4 3.312453      47.23531
## 
## $means
##                      ABD      std r       se    Min    Max      Q25     Q50
## 50 - AS         103.3375 31.19703 4 14.25992  59.45 128.38  92.1425 112.760
## 50 + AS 1000ppm 115.0400 16.41308 4 14.25992  93.30 133.18 110.9550 116.840
## 50 + AS 600ppm   91.3700 17.09741 4 14.25992  70.14 111.58  84.2400  91.880
## Control         176.5325 41.45552 4 14.25992 118.92 215.44 162.6975 185.885
##                     Q75
## 50 - AS         123.955
## 50 + AS 1000ppm 120.925
## 50 + AS 600ppm   99.010
## Control         199.720
## 
## $comparison
## NULL
## 
## $groups
##                      ABD groups
## Control         176.5325      a
## 50 + AS 1000ppm 115.0400      b
## 50 - AS         103.3375      b
## 50 + AS 600ppm   91.3700      b
## 
## attr(,"class")
## [1] "group"

Análisis estadístico - Muestreo 3

# Datos - Área bajo el dosel - Muestreo 3

datos.ABD.M3 <- data.frame(Var_M3$`Factor riego`, Var_M3$`Factor ácido ascórbico`, Var_M3$Tratamiento, Var_M3$`Área bajo el dosel (cm2)`)
colnames(datos.ABD.M3) <- c("F_riego", "F_AA", "Tratamiento", "ABD")
datos.ABD.M3
datos.ABD.M3$F_riego <- as.factor(datos.ABD.M3$F_riego)
datos.ABD.M3$F_AA <- as.factor(datos.ABD.M3$F_AA)
str(datos.ABD.M3)
## 'data.frame':    16 obs. of  4 variables:
##  $ F_riego    : Factor w/ 2 levels "0.5","1": 2 2 2 2 1 1 1 1 1 1 ...
##  $ F_AA       : Factor w/ 3 levels "0 ppm","1000 ppm",..: 1 1 1 1 1 1 1 1 3 3 ...
##  $ Tratamiento: chr  "Control" "Control" "Control" "Control" ...
##  $ ABD        : num  243.1 155.6 305.6 210.5 46.1 ...
# Anova - Área bajo el dosel - Muestreo 3
A.ABD.M3 <- aov(ABD ~ F_riego*F_AA, data = datos.ABD.M3)
summary(A.ABD.M3)
##             Df Sum Sq Mean Sq F value   Pr(>F)    
## F_riego      1 110139  110139  97.836 4.03e-07 ***
## F_AA         2    190      95   0.084     0.92    
## Residuals   12  13509    1126                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
  • Los dos tipos de riego, como factor independiente, tuvieron diferencias con una significancia del 99.9%.
# Prueba de normalidad de residuos
shapiro.test(A.ABD.M3$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  A.ABD.M3$residuals
## W = 0.87094, p-value = 0.02811
  • Los datos no tienen una distribución normal, por lo tanto, se debe aplicar otra prueba que soporte la distribución de estos datos.
TukeyHSD(A.ABD.M3)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = ABD ~ F_riego * F_AA, data = datos.ABD.M3)
## 
## $F_riego
##           diff   lwr      upr p adj
## 1-0.5 191.6067 149.4 233.8133 4e-07
## 
## $F_AA
##                       diff       lwr      upr     p adj
## 1000 ppm-0 ppm   -5.074917 -59.89012 49.74028 0.9670198
## 600 ppm-0 ppm    -6.115417 -60.93062 48.69978 0.9525305
## 600 ppm-1000 ppm -1.040500 -64.33564 62.25464 0.9989402
  • Los dos tipos de riego presenta diferencias significativas.
# Anova - ABD - Muestreo 3 - Comparación entre los tratamientos

A.ABD.M3.CT <- aov(ABD ~ Tratamiento, data=datos.ABD.M3)
summary(A.ABD.M3.CT)
##             Df Sum Sq Mean Sq F value  Pr(>F)    
## Tratamiento  3 110329   36776   32.67 4.7e-06 ***
## Residuals   12  13509    1126                    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Tukey_A.ABD.M3.CT <- TukeyHSD(A.ABD.M3.CT)
Tukey_A.ABD.M3.CT
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = ABD ~ Tratamiento, data = datos.ABD.M3)
## 
## $Tratamiento
##                                    diff       lwr       upr     p adj
## 50 + AS 1000ppm-50 - AS         -7.8725 -78.30976  62.56476 0.9867703
## 50 + AS 600ppm-50 - AS          -8.9130 -79.35026  61.52426 0.9810721
## Control-50 - AS                186.0115 115.57424 256.44876 0.0000239
## 50 + AS 600ppm-50 + AS 1000ppm  -1.0405 -71.47776  69.39676 0.9999679
## Control-50 + AS 1000ppm        193.8840 123.44674 264.32126 0.0000157
## Control-50 + AS 600ppm         194.9245 124.48724 265.36176 0.0000148
  • Podemos observar que todos los tratamientos tienen diferencias signifciativas con respecto a su control.

Análisis estadístico - Muestreo 4

# Datos - Área bajo el dosel - Muestreo 4

datos.ABD.M4 <- data.frame(Var_M4$`Factor riego`, Var_M4$`Factor ácido ascórbico`, Var_M4$Tratamiento, Var_M4$`Área bajo el dosel (cm2)`)
colnames(datos.ABD.M4) <- c("F_riego", "F_AA", "Tratamiento", "ABD")
datos.ABD.M4
datos.ABD.M4$F_riego <- as.factor(datos.ABD.M4$F_riego)
datos.ABD.M4$F_AA <- as.factor(datos.ABD.M4$F_AA)
str(datos.ABD.M4)
## 'data.frame':    16 obs. of  4 variables:
##  $ F_riego    : Factor w/ 2 levels "0.5","1": 2 2 2 2 1 1 1 1 1 1 ...
##  $ F_AA       : Factor w/ 3 levels "0 ppm","1000 ppm",..: 1 1 1 1 1 1 1 1 3 3 ...
##  $ Tratamiento: chr  "Control" "Control" "Control" "Control" ...
##  $ ABD        : num  180.6 286.1 337.3 270.8 62.7 ...
# Anova - Área bajo el dosel - Muestreo 4
A.ABD.M4 <- aov(ABD ~ F_riego*F_AA, data = datos.ABD.M4)
summary(A.ABD.M4)
##             Df Sum Sq Mean Sq F value  Pr(>F)    
## F_riego      1 128425  128425 102.104 3.2e-07 ***
## F_AA         2   2078    1039   0.826   0.461    
## Residuals   12  15093    1258                    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
  • Los dos tipos de riego, como factor independiente, tuvieron diferencias con una significancia del 99.9%.
# Prueba de normalidad de residuos
shapiro.test(A.ABD.M4$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  A.ABD.M4$residuals
## W = 0.86669, p-value = 0.02421
  • Los datos no tienen una distribución normal, por lo tanto, se debe aplicar otra prueba que soporte la distribución de estos datos.
TukeyHSD(A.ABD.M4)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = ABD ~ F_riego * F_AA, data = datos.ABD.M4)
## 
## $F_riego
##           diff      lwr     upr p adj
## 1-0.5 206.9018 162.2885 251.515 3e-07
## 
## $F_AA
##                      diff       lwr      upr     p adj
## 1000 ppm-0 ppm   19.00875 -38.93192 76.94942 0.6653349
## 600 ppm-0 ppm    18.20125 -39.73942 76.14192 0.6875191
## 600 ppm-1000 ppm -0.80750 -67.71162 66.09662 0.9994286
  • Los dos tipos de riego presenta diferencias significativas.
# Anova - ABD - Muestreo 4 - Comparación entre los tratamientos

A.ABD.M4.CT <- aov(ABD ~ Tratamiento, data=datos.ABD.M4)
summary(A.ABD.M4.CT)
##             Df Sum Sq Mean Sq F value   Pr(>F)    
## Tratamiento  3 130503   43501   34.59 3.47e-06 ***
## Residuals   12  15093    1258                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Tukey_A.ABD.M4.CT <- TukeyHSD(A.ABD.M4.CT)
Tukey_A.ABD.M4.CT
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = ABD ~ Tratamiento, data = datos.ABD.M4)
## 
## $Tratamiento
##                                     diff       lwr       upr     p adj
## 50 + AS 1000ppm-50 - AS         28.31125 -46.14222 102.76472 0.6796043
## 50 + AS 600ppm-50 - AS          27.50375 -46.94972 101.95722 0.6981024
## Control-50 - AS                225.50675 151.05328 299.96022 0.0000058
## 50 + AS 600ppm-50 + AS 1000ppm  -0.80750 -75.26097  73.64597 0.9999873
## Control-50 + AS 1000ppm        197.19550 122.74203 271.64897 0.0000232
## Control-50 + AS 600ppm         198.00300 123.54953 272.45647 0.0000223
  • Podemos observar que todos los tratamientos tienen diferencias signifciativas con respecto a su control.

Análisis descriptivo - Área bajo el dosel

# Datos - Gráfico - Área bajo el dosel

Datos.G.ABD <- data.frame(factor(Tratamientos, ordered = TRUE, levels = c("Control", "50 - AS", "50 + AS 600ppm", "50 + AS 1000ppm")), Var_M1$`Área bajo el dosel (cm2)`, Var_M2$`Área bajo el dosel (cm2)`, Var_M3$`Área bajo el dosel (cm2)`, Var_M4$`Área bajo el dosel (cm2)`)
colnames(Datos.G.ABD) <- c("Tratamientos", "31", "38","45", "52")
Datos.G.ABD
# Unificar la variable respuesta en una sola columna
df.long.ABD = gather(Datos.G.ABD, dds, ABD, 2:5)
df.long.ABD
# Diferencias significativas con el control
#          M1  M2  M3  M4
DS.ABD <- c("", "", "", "",  #T1
           "*", "*", "*", "*", #T2
           "*", "*", "*", "*",  #T3
           "*", "*", "*", "*") #T4

# Media y desviación estandar de la media de los tratamientos en los diferentes muestreos.
df.sumzd.ABD = group_by(df.long.ABD, Tratamientos, dds, ) %>% summarise(mean = mean(ABD), sd = sd(ABD))
## `summarise()` has grouped output by 'Tratamientos'. You can override using the
## `.groups` argument.
# Con diferencias significativas de los tratamientos con su control
df.sumzd.ABD.ds <- data.frame(df.sumzd.ABD, DS.ABD)
df.sumzd.ABD.ds
G.ABD <- ggplot(df.sumzd.ABD, aes(x = dds, y = mean, group = Tratamientos, colour = Tratamientos)) +
  scale_colour_manual(values=c("red", "yellow", "blue", "green"))+
  geom_line() +
  geom_point( size=2, shape = 21, fill="white") +
  theme_test()+
  ggtitle("Área promedio bajo el dosel \nen los diferentes muestreos")+ theme(plot.title = element_text(family = "Times New Roman",
size = rel(1.5),
vjust = 0.5, 
hjust = 0.5))+
  labs(x = "Días después de siembra", y = "cm2")+
  theme(axis.title.x = element_text(family = "Times New Roman"), axis.title.y = element_text(family = "Times New Roman"))+
  theme(legend.title = element_text(family = "Times New Roman"))

G.ABD

G2.ABD <- ggplot(df.sumzd.ABD, aes(x=dds, y=mean, fill=Tratamientos))+
  geom_bar(stat = "identity", position = "dodge", color = "black", alpha = 0.5)+
  geom_errorbar(aes(ymin=mean-sd, ymax=mean+sd), width = 0.25, size=0.5, position = position_dodge(0.9), alpha = 0.5)+
  scale_fill_manual(values=c("red", "yellow", "blue", "green")) +
  theme_minimal()+
  ggtitle("Área promedio bajo el dosel \nen los diferentes muestreos") + theme(plot.title = element_text(family = "Times New Roman",
size = rel(1.5),
vjust = 0.5, 
hjust = 0.5))+
  labs(x = "Días después de siembra", y = "g")+
  theme(axis.title.x = element_text(family = "Times New Roman"), axis.title.y = element_text(family = "Times New Roman"))+
  theme(legend.title = element_text(family = "Times New Roman"))+
  geom_text(aes(x=dds, y= mean+30, label=DS.ABD),
            position = position_dodge(width = 1), size = 7)

G2.ABD

Tasa de asimilación neta

Análisis estadístico - Muestreo 1

# Datos - Tasa de asimilación neta - Muestreo 1

datos.TAN.M1 <- data.frame(Ind_M1$`Factor riego`, Ind_M1$`Factor ácido ascórbico`, Ind_M1$Tratamiento, Ind_M1$`Tasa de asimilación neta (gr/cm2*día)`)
colnames(datos.TAN.M1) <- c("F_riego", "F_AA", "Tratamiento", "TAN")
datos.TAN.M1
datos.TAN.M1$F_riego <- as.factor(datos.TAN.M1$F_riego)
datos.TAN.M1$F_AA <- as.factor(datos.TAN.M1$F_AA)
str(datos.TAN.M1)
## 'data.frame':    16 obs. of  4 variables:
##  $ F_riego    : Factor w/ 2 levels "0.5","1": 2 2 2 2 1 1 1 1 1 1 ...
##  $ F_AA       : Factor w/ 3 levels "0 ppm","1000 ppm",..: 1 1 1 1 1 1 1 1 3 3 ...
##  $ Tratamiento: chr  "Control" "Control" "Control" "Control" ...
##  $ TAN        : num  0.00127 0.00127 0.00127 0.00127 0.00114 ...
# Anova - Tasa de asimilación neta - Muestreo 1
A.TAN.M1 <- aov(TAN ~ F_riego*F_AA, data = datos.TAN.M1)
summary(A.TAN.M1)
##             Df    Sum Sq   Mean Sq   F value Pr(>F)    
## F_riego      1 9.800e-10 9.800e-10 1.790e+29 <2e-16 ***
## F_AA         2 3.055e-07 1.527e-07 2.803e+31 <2e-16 ***
## Residuals   12 0.000e+00 0.000e+00                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
  • Tanto las concentraciones de ácido ascórbico como los dos tipos de riego, como factores independientes, tuvieron diferencias entre si con una significancia del 99.9%.
# Prueba de normalidad de residuos
shapiro.test(A.TAN.M1$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  A.TAN.M1$residuals
## W = 0.59712, p-value = 1.521e-05
  • Los datos no tienen una distribución normal, por lo tanto, se debe aplicar una prueba que soporte la distribución de estos datos.
TukeyHSD(A.TAN.M1)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = TAN ~ F_riego * F_AA, data = datos.TAN.M1)
## 
## $F_riego
##                diff           lwr           upr p adj
## 1-0.5 -1.803209e-05 -1.803209e-05 -1.803209e-05     0
## 
## $F_AA
##                           diff           lwr           upr p adj
## 1000 ppm-0 ppm    2.957265e-04  2.957265e-04  2.957265e-04     0
## 600 ppm-0 ppm     2.122449e-06  2.122449e-06  2.122449e-06     0
## 600 ppm-1000 ppm -2.936041e-04 -2.936041e-04 -2.936041e-04     0
  • Las concentraciones de ácido áscórbico y los dos tipos de riego presenta diferencias significativas.
# Anova - TAN - Muestreo 1 - Comparación entre los tratamientos

A.TAN.M1.CT <- aov(TAN ~ Tratamiento, data=datos.TAN.M1)
summary(A.TAN.M1.CT)
##             Df    Sum Sq   Mean Sq   F value Pr(>F)    
## Tratamiento  3 3.064e-07 1.021e-07 9.934e+30 <2e-16 ***
## Residuals   12 0.000e+00 0.000e+00                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Tukey_A.TAN.M1.CT <- TukeyHSD(A.TAN.M1.CT)
Tukey_A.TAN.M1.CT
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = TAN ~ Tratamiento, data = datos.TAN.M1)
## 
## $Tratamiento
##                                         diff           lwr           upr p adj
## 50 + AS 1000ppm-50 - AS         3.701887e-04  3.701887e-04  3.701887e-04     0
## 50 + AS 600ppm-50 - AS          7.658469e-05  7.658469e-05  7.658469e-05     0
## Control-50 - AS                 1.308924e-04  1.308924e-04  1.308924e-04     0
## 50 + AS 600ppm-50 + AS 1000ppm -2.936041e-04 -2.936041e-04 -2.936041e-04     0
## Control-50 + AS 1000ppm        -2.392964e-04 -2.392964e-04 -2.392964e-04     0
## Control-50 + AS 600ppm          5.430770e-05  5.430770e-05  5.430770e-05     0
  • Podemos observar que todos los tratamientos tienen diferencias signifciativas con respecto a su control.

Análisis estadístico - Muestreo 2

# Datos - Tasa de asimilación neta - Muestreo 2

datos.TAN.M2 <- data.frame(Ind_M2$`Factor riego`, Ind_M2$`Factor ácido ascórbico`, Ind_M2$Tratamiento, Ind_M2$`Tasa de asimilación neta (gr/cm2*día)`)
colnames(datos.TAN.M2) <- c("F_riego", "F_AA", "Tratamiento", "TAN")
datos.TAN.M2
datos.TAN.M2$F_riego <- as.factor(datos.TAN.M2$F_riego)
datos.TAN.M2$F_AA <- as.factor(datos.TAN.M2$F_AA)
str(datos.TAN.M2)
## 'data.frame':    16 obs. of  4 variables:
##  $ F_riego    : Factor w/ 2 levels "0.5","1": 2 2 2 2 1 1 1 1 1 1 ...
##  $ F_AA       : Factor w/ 3 levels "0 ppm","1000 ppm",..: 1 1 1 1 1 1 1 1 3 3 ...
##  $ Tratamiento: chr  "Control" "Control" "Control" "Control" ...
##  $ TAN        : num  0.000612 0.000612 0.000612 0.000612 0.000464 ...
# Anova - Tasa de asimilación neta - Muestreo 2
A.TAN.M2 <- aov(TAN ~ F_riego*F_AA, data = datos.TAN.M2)
summary(A.TAN.M2)
##             Df    Sum Sq   Mean Sq   F value Pr(>F)    
## F_riego      1 2.800e-10 2.800e-10 2.112e+28 <2e-16 ***
## F_AA         2 1.562e-07 7.809e-08 5.878e+30 <2e-16 ***
## Residuals   12 0.000e+00 0.000e+00                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
  • Los dos tipos de riego, como factor independiente, tuvieron diferencias con una significancia del 99.9%.
# Prueba de normalidad de residuos
shapiro.test(A.TAN.M2$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  A.TAN.M2$residuals
## W = 0.58314, p-value = 1.127e-05
  • Los datos no tienen una distribución normal, por lo tanto, se debe aplicar una prueba que soporte la distribución de estos datos.
TukeyHSD(A.TAN.M2)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = TAN ~ F_riego * F_AA, data = datos.TAN.M2)
## 
## $F_riego
##                diff           lwr           upr p adj
## 1-0.5 -9.671788e-06 -9.671788e-06 -9.671788e-06     0
## 
## $F_AA
##                          diff          lwr          upr p adj
## 1000 ppm-0 ppm   1.265384e-04 1.265384e-04 1.265384e-04     0
## 600 ppm-0 ppm    1.881863e-04 1.881863e-04 1.881863e-04     0
## 600 ppm-1000 ppm 6.164797e-05 6.164797e-05 6.164797e-05     0
  • Ambos factores presenta diferencias significativas entre si.
# Anova - TAN - Muestreo 2 - Comparación entre los tratamientos

A.TAN.M2.CT <- aov(TAN ~ Tratamiento, data=datos.TAN.M2)
summary(A.TAN.M2.CT)
##             Df    Sum Sq   Mean Sq   F value Pr(>F)    
## Tratamiento  3 1.565e-07 5.215e-08 8.295e+30 <2e-16 ***
## Residuals   12 0.000e+00 0.000e+00                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Tukey_A.TAN.M2.CT <- TukeyHSD(A.TAN.M2.CT)
Tukey_A.TAN.M2.CT
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = TAN ~ Tratamiento, data = datos.TAN.M2)
## 
## $Tratamiento
##                                         diff           lwr           upr p adj
## 50 + AS 1000ppm-50 - AS         2.052195e-04  2.052195e-04  2.052195e-04     0
## 50 + AS 600ppm-50 - AS          2.668675e-04  2.668675e-04  2.668675e-04     0
## Control-50 - AS                 1.476906e-04  1.476906e-04  1.476906e-04     0
## 50 + AS 600ppm-50 + AS 1000ppm  6.164797e-05  6.164797e-05  6.164797e-05     0
## Control-50 + AS 1000ppm        -5.752898e-05 -5.752898e-05 -5.752898e-05     0
## Control-50 + AS 600ppm         -1.191770e-04 -1.191770e-04 -1.191770e-04     0
  • Podemos observar que todos los tratamientos tienen diferencias signifciativas con respecto a su control.

Análisis estadístico - Muestreo 3

# Datos - Tasa de asimilación neta - Muestreo 3

datos.TAN.M3 <- data.frame(Ind_M3$`Factor riego`, Ind_M3$`Factor ácido ascórbico`, Ind_M3$Tratamiento, Ind_M3$`Tasa de asimilación neta (gr/cm2*día)`)
colnames(datos.TAN.M3) <- c("F_riego", "F_AA", "Tratamiento", "TAN")
datos.TAN.M3
datos.TAN.M3$F_riego <- as.factor(datos.TAN.M3$F_riego)
datos.TAN.M3$F_AA <- as.factor(datos.TAN.M3$F_AA)
str(datos.TAN.M3)
## 'data.frame':    16 obs. of  4 variables:
##  $ F_riego    : Factor w/ 2 levels "0.5","1": 2 2 2 2 1 1 1 1 1 1 ...
##  $ F_AA       : Factor w/ 3 levels "0 ppm","1000 ppm",..: 1 1 1 1 1 1 1 1 3 3 ...
##  $ Tratamiento: chr  "Control" "Control" "Control" "Control" ...
##  $ TAN        : num  0.000623 0.000623 0.000623 0.000623 0.000318 ...
# Anova - Tasa de asimilación neta - Muestreo 3
A.TAN.M3 <- aov(TAN ~ F_riego*F_AA, data = datos.TAN.M3)
summary(A.TAN.M3)
##             Df    Sum Sq   Mean Sq   F value Pr(>F)    
## F_riego      1 5.860e-08 5.860e-08 9.643e+30 <2e-16 ***
## F_AA         2 7.108e-07 3.554e-07 5.847e+31 <2e-16 ***
## Residuals   12 0.000e+00 0.000e+00                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
  • Los dos tipos de riego, como factor independiente, tuvieron diferencias con una significancia del 99.9%.
# Prueba de normalidad de residuos
shapiro.test(A.TAN.M3$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  A.TAN.M3$residuals
## W = 0.59247, p-value = 1.376e-05
  • Los datos no tienen una distribución normal, por lo tanto, se debe aplicar una prueba que soporte la distribución de estos datos.
TukeyHSD(A.TAN.M3)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = TAN ~ F_riego * F_AA, data = datos.TAN.M3)
## 
## $F_riego
##               diff          lwr          upr p adj
## 1-0.5 0.0001397814 0.0001397814 0.0001397814     0
## 
## $F_AA
##                           diff           lwr           upr p adj
## 1000 ppm-0 ppm    4.267373e-04  4.267373e-04  4.267373e-04     0
## 600 ppm-0 ppm    -9.623044e-05 -9.623044e-05 -9.623044e-05     0
## 600 ppm-1000 ppm -5.229677e-04 -5.229677e-04 -5.229677e-04     0
  • Los dos facotres presentan diferencias significativas entre si.
# Anova - TAN - Muestreo 3 - Comparación entre los tratamientos

A.TAN.M3.CT <- aov(TAN ~ Tratamiento, data=datos.TAN.M3)
summary(A.TAN.M3.CT)
##             Df    Sum Sq   Mean Sq   F value Pr(>F)    
## Tratamiento  3 7.695e-07 2.565e-07 1.414e+31 <2e-16 ***
## Residuals   12 0.000e+00 0.000e+00                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Tukey_A.TAN.M3.CT <- TukeyHSD(A.TAN.M3.CT)
Tukey_A.TAN.M3.CT
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = TAN ~ Tratamiento, data = datos.TAN.M3)
## 
## $Tratamiento
##                                         diff           lwr           upr p adj
## 50 + AS 1000ppm-50 - AS         5.093640e-04  5.093640e-04  5.093640e-04     0
## 50 + AS 600ppm-50 - AS         -1.360374e-05 -1.360374e-05 -1.360374e-05     0
## Control-50 - AS                 3.050348e-04  3.050348e-04  3.050348e-04     0
## 50 + AS 600ppm-50 + AS 1000ppm -5.229677e-04 -5.229677e-04 -5.229677e-04     0
## Control-50 + AS 1000ppm        -2.043292e-04 -2.043292e-04 -2.043292e-04     0
## Control-50 + AS 600ppm          3.186385e-04  3.186385e-04  3.186385e-04     0
  • Podemos observar que todos los tratamientos tienen diferencias signifciativas con respecto a su control.

Análisis estadístico - Muestreo 4

# Datos - Tasa de asimilación neta - Muestreo 4

datos.TAN.M4 <- data.frame(Ind_M4$`Factor riego`, Ind_M4$`Factor ácido ascórbico`, Ind_M4$Tratamiento, Ind_M4$`Tasa de asimilación neta (gr/cm2*día)`)
colnames(datos.TAN.M4) <- c("F_riego", "F_AA", "Tratamiento", "TAN")
datos.TAN.M4
datos.TAN.M4$F_riego <- as.factor(datos.TAN.M4$F_riego)
datos.TAN.M4$F_AA <- as.factor(datos.TAN.M4$F_AA)
str(datos.TAN.M4)
## 'data.frame':    16 obs. of  4 variables:
##  $ F_riego    : Factor w/ 2 levels "0.5","1": 2 2 2 2 1 1 1 1 1 1 ...
##  $ F_AA       : Factor w/ 3 levels "0 ppm","1000 ppm",..: 1 1 1 1 1 1 1 1 3 3 ...
##  $ Tratamiento: chr  "Control" "Control" "Control" "Control" ...
##  $ TAN        : num  0.000662 0.000662 0.000662 0.000662 0.000289 ...
# Anova - Tasa de asimilación neta - Muestreo 4
A.TAN.M4 <- aov(TAN ~ F_riego*F_AA, data = datos.TAN.M4)
summary(A.TAN.M4)
##             Df    Sum Sq   Mean Sq   F value Pr(>F)    
## F_riego      1 1.947e-07 1.947e-07 3.172e+31 <2e-16 ***
## F_AA         2 1.653e-07 8.265e-08 1.347e+31 <2e-16 ***
## Residuals   12 0.000e+00 0.000e+00                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
  • Los dos tipos de riego, como factor independiente, tuvieron diferencias con una significancia del 99.9%.
# Prueba de normalidad de residuos
shapiro.test(A.TAN.M4$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  A.TAN.M4$residuals
## W = 0.59123, p-value = 1.339e-05
  • Los datos no tienen una distribución normal, por lo tanto, se debe aplicar una prueba que soporte la distribución de estos datos.
TukeyHSD(A.TAN.M4)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = TAN ~ F_riego * F_AA, data = datos.TAN.M4)
## 
## $F_riego
##               diff          lwr          upr p adj
## 1-0.5 0.0002547282 0.0002547282 0.0002547282     0
## 
## $F_AA
##                          diff          lwr          upr p adj
## 1000 ppm-0 ppm   1.740115e-05 1.740115e-05 1.740115e-05     0
## 600 ppm-0 ppm    2.191283e-04 2.191283e-04 2.191283e-04     0
## 600 ppm-1000 ppm 2.017271e-04 2.017271e-04 2.017271e-04     0
  • Los dos factores presentan diferencias significativas entre si.
# Anova - TAN - Muestreo 4 - Comparación entre los tratamientos

A.TAN.M4.CT <- aov(TAN ~ Tratamiento, data=datos.TAN.M4)
summary(A.TAN.M4.CT)
##             Df  Sum Sq Mean Sq   F value Pr(>F)    
## Tratamiento  3 3.6e-07 1.2e-07 2.975e+31 <2e-16 ***
## Residuals   12 0.0e+00 0.0e+00                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Tukey_A.TAN.M4.CT <- TukeyHSD(A.TAN.M4.CT)
Tukey_A.TAN.M4.CT
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = TAN ~ Tratamiento, data = datos.TAN.M4)
## 
## $Tratamiento
##                                        diff          lwr          upr p adj
## 50 + AS 1000ppm-50 - AS        7.653350e-05 7.653350e-05 7.653350e-05     0
## 50 + AS 600ppm-50 - AS         2.782606e-04 2.782606e-04 2.782606e-04     0
## Control-50 - AS                3.729930e-04 3.729930e-04 3.729930e-04     0
## 50 + AS 600ppm-50 + AS 1000ppm 2.017271e-04 2.017271e-04 2.017271e-04     0
## Control-50 + AS 1000ppm        2.964595e-04 2.964595e-04 2.964595e-04     0
## Control-50 + AS 600ppm         9.473233e-05 9.473233e-05 9.473233e-05     0
  • Podemos observar que todos los tratamientos tienen diferencias signifciativas con respecto a su control.

Análisis descriptivo - Tasa de asimilación neta

# Datos - Gráfico - Tasa de asimilación neta

Datos.G.TAN <- data.frame(factor(Tratamientos, ordered = TRUE, levels = c("Control", "50 - AS", "50 + AS 600ppm", "50 + AS 1000ppm")), Ind_M1$`Tasa de asimilación neta (gr/cm2*día)`, Ind_M2$`Tasa de asimilación neta (gr/cm2*día)`, Ind_M3$`Tasa de asimilación neta (gr/cm2*día)`, Ind_M4$`Tasa de asimilación neta (gr/cm2*día)`)
colnames(Datos.G.TAN) <- c("Tratamientos", "31", "38","45", "52")
Datos.G.TAN
# Unificar la variable respuesta en una sola columna
df.long.TAN = gather(Datos.G.TAN, dds, TAN, 2:5)
df.long.TAN
# Diferencias significativas con el control
#          M1  M2  M3  M4
DS.TAN <- c("", "", "", "",  #T1
           "*", "*", "*", "*", #T2
           "*", "*", "*", "*",  #T3
           "*", "*", "*", "*") #T4

# Media y desviación estandar de la media de los tratamientos en los diferentes muestreos.
df.sumzd.TAN = group_by(df.long.TAN, Tratamientos, dds, ) %>% summarise(mean = mean(TAN), sd = sd(TAN))
## `summarise()` has grouped output by 'Tratamientos'. You can override using the
## `.groups` argument.
# Con diferencias significativas de los tratamientos con su control
df.sumzd.TAN.ds <- data.frame(df.sumzd.TAN, DS.TAN)
df.sumzd.TAN.ds
G.TAN <- ggplot(df.sumzd.TAN, aes(x = dds, y = mean, group = Tratamientos, colour = Tratamientos)) +
  scale_colour_manual(values=c("red", "#EFA30C", "blue", "green"))+
  geom_line() +
  geom_point( size=2, shape = 21, fill="white") +
  theme_test()+
  ggtitle("Tasa de asimilación neta \nen los diferentes muestreos")+ theme(plot.title = element_text(family = "Times New Roman",
size = rel(2),
vjust = 0.5, 
hjust = 0.5))+
  theme(axis.text.x = element_text(size=15),
        axis.text.y = element_text(size=15))+
  labs(x = "Días después de siembra", y = "gr / cm2 * día")+
  theme(axis.title.x = element_text(family = "Times New Roman", size = rel(1.5)), axis.title.y = element_text(family = "Times New Roman", size = rel(1.5)))+
  theme(legend.title = element_text(family = "Times New Roman"))

G.TAN

Tasa de asimilación neta 2

  • Se realizó haciendo los calculos en un orden diferente y terminó siendo un ajuste beneficioso para el analisis y la explicación de los resultados de esta variable.
# Datos - Gráfico - Tasa de asimilación neta

Datos.G.TAN.2 <- data.frame(factor(Tratamientos, ordered = TRUE, levels = c("Control", "50 - AS", "50 + AS 600ppm", "50 + AS 1000ppm")), Ind_M1$`TAN 2`, Ind_M2$`TAN 2`, Ind_M3$`TAN 2`, Ind_M4$`TAN 2`)
colnames(Datos.G.TAN.2) <- c("Tratamientos", "31", "38","45", "52")
Datos.G.TAN.2
# Unificar la variable respuesta en una sola columna
df.long.TAN.2 = gather(Datos.G.TAN.2, dds, TAN2, 2:5)
df.long.TAN.2
# Diferencias significativas con el control

# Media y desviación estandar de la media de los tratamientos en los diferentes muestreos.
df.sumzd.TAN.2 = group_by(df.long.TAN.2, Tratamientos, dds, ) %>% summarise(mean = mean(TAN2), sd = sd(TAN2))
## `summarise()` has grouped output by 'Tratamientos'. You can override using the
## `.groups` argument.
# Con diferencias significativas de los tratamientos con su control
df.sumzd.TAN.2.ds <- data.frame(df.sumzd.TAN.2)
df.sumzd.TAN.2.ds
G.TAN.2 <- ggplot(df.sumzd.TAN.2, aes(x = dds, y = mean, group = Tratamientos, colour = Tratamientos)) +
  scale_colour_manual(values=c("red", "#EFA30C", "blue", "green"))+
  geom_line() +
  geom_point( size=2, shape = 21, fill="white") +
  theme_test()+
  theme(axis.text.x = element_text(size=15),
        axis.text.y = element_text(size=15))+
  ggtitle("Tasa de asimilación neta \nen los diferentes muestreos")+ theme(plot.title = element_text(family = "Times New Roman",
size = rel(2),
vjust = 0.5, 
hjust = 0.5))+
  labs(x = "Días después de siembra", y = "gr / cm2 * día")+
  theme(axis.title.x = element_text(family = "Times New Roman", size = rel(1.5)), axis.title.y = element_text(family = "Times New Roman", size = rel(1.5)))+
  theme(legend.title = element_text(family = "Times New Roman"))

G.TAN.2

Tasa absoluta de crecimiento

Análisis estadístico - Muestreo 1

# Datos - Tasa absoluta de crecimiento - Muestreo 1

datos.TAC.M1 <- data.frame(Ind_M1$`Factor riego`, Ind_M1$`Factor ácido ascórbico`, Ind_M1$Tratamiento, Ind_M1$`Tasa absoluta de crecimiento (gr/dia)`)
colnames(datos.TAC.M1) <- c("F_riego", "F_AA", "Tratamiento", "TAC")
datos.TAC.M1
datos.TAC.M1$F_riego <- as.factor(datos.TAC.M1$F_riego)
datos.TAC.M1$F_AA <- as.factor(datos.TAC.M1$F_AA)
str(datos.TAC.M1)
## 'data.frame':    16 obs. of  4 variables:
##  $ F_riego    : Factor w/ 2 levels "0.5","1": 2 2 2 2 1 1 1 1 1 1 ...
##  $ F_AA       : Factor w/ 3 levels "0 ppm","1000 ppm",..: 1 1 1 1 1 1 1 1 3 3 ...
##  $ Tratamiento: chr  "Control" "Control" "Control" "Control" ...
##  $ TAC        : num  0.0264 0.0264 0.0264 0.0264 0.0188 ...
# Anova - Tasa absoluta de crecimiento - Muestreo 1
A.TAC.M1 <- aov(TAC ~ F_riego*F_AA, data = datos.TAC.M1)
summary(A.TAC.M1)
##             Df    Sum Sq   Mean Sq   F value Pr(>F)    
## F_riego      1 0.0001725 1.725e-04 1.761e+32 <2e-16 ***
## F_AA         2 0.0000113 5.650e-06 5.766e+30 <2e-16 ***
## Residuals   12 0.0000000 0.000e+00                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
  • Tanto las concentraciones de ácido ascórbico como los dos tipos de riego, como factores independientes, tuvieron diferencias entre si con una significancia del 99.9%.
# Prueba de normalidad de residuos
shapiro.test(A.TAC.M1$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  A.TAC.M1$residuals
## W = 0.67722, p-value = 9.572e-05
  • Los datos no tienen una distribución normal, por lo tanto, se debe aplicar una prueba que soporte la distribución de estos datos.
TukeyHSD(A.TAC.M1)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = TAC ~ F_riego * F_AA, data = datos.TAC.M1)
## 
## $F_riego
##              diff         lwr         upr p adj
## 1-0.5 0.007582796 0.007582796 0.007582796     0
## 
## $F_AA
##                          diff          lwr          upr p adj
## 1000 ppm-0 ppm    0.001188575  0.001188575  0.001188575     0
## 600 ppm-0 ppm    -0.001188038 -0.001188038 -0.001188038     0
## 600 ppm-1000 ppm -0.002376613 -0.002376613 -0.002376613     0
  • Las concentraciones de ácido áscórbico y los dos tipos de riego presenta diferencias significativas.
# Anova - TAC - Muestreo 1 - Comparación entre los tratamientos

A.TAC.M1.CT <- aov(TAC ~ Tratamiento, data=datos.TAC.M1)
summary(A.TAC.M1.CT)
##             Df    Sum Sq   Mean Sq   F value Pr(>F)    
## Tratamiento  3 0.0001838 6.126e-05 1.797e+31 <2e-16 ***
## Residuals   12 0.0000000 0.000e+00                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Tukey_A.TAC.M1.CT <- TukeyHSD(A.TAC.M1.CT)
Tukey_A.TAC.M1.CT
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = TAC ~ Tratamiento, data = datos.TAC.M1)
## 
## $Tratamiento
##                                        diff          lwr          upr p adj
## 50 + AS 1000ppm-50 - AS         0.001188710  0.001188710  0.001188710     0
## 50 + AS 600ppm-50 - AS         -0.001187903 -0.001187903 -0.001187903     0
## Control-50 - AS                 0.007583065  0.007583065  0.007583065     0
## 50 + AS 600ppm-50 + AS 1000ppm -0.002376613 -0.002376613 -0.002376613     0
## Control-50 + AS 1000ppm         0.006394355  0.006394355  0.006394355     0
## Control-50 + AS 600ppm          0.008770968  0.008770968  0.008770968     0
  • Podemos observar que todos los tratamientos tienen diferencias signifciativas con respecto a su control.

Análisis estadístico - Muestreo 2

# Datos - Tasa absoluta de crecimiento - Muestreo 2

datos.TAC.M2 <- data.frame(Ind_M2$`Factor riego`, Ind_M2$`Factor ácido ascórbico`, Ind_M2$Tratamiento, Ind_M2$`Tasa absoluta de crecimiento (gr/dia)`)
colnames(datos.TAC.M2) <- c("F_riego", "F_AA", "Tratamiento", "TAC")
datos.TAC.M2
datos.TAC.M2$F_riego <- as.factor(datos.TAC.M2$F_riego)
datos.TAC.M2$F_AA <- as.factor(datos.TAC.M2$F_AA)
str(datos.TAC.M2)
## 'data.frame':    16 obs. of  4 variables:
##  $ F_riego    : Factor w/ 2 levels "0.5","1": 2 2 2 2 1 1 1 1 1 1 ...
##  $ F_AA       : Factor w/ 3 levels "0 ppm","1000 ppm",..: 1 1 1 1 1 1 1 1 3 3 ...
##  $ Tratamiento: chr  "Control" "Control" "Control" "Control" ...
##  $ TAC        : num  0.082 0.082 0.082 0.082 0.0459 ...
# Anova - Tasa absoluta de crecimiento - Muestreo 2
A.TAC.M2 <- aov(TAC ~ F_riego*F_AA, data = datos.TAC.M2)
summary(A.TAC.M2)
##             Df   Sum Sq  Mean Sq   F value Pr(>F)    
## F_riego      1 0.003831 0.003831 1.095e+32 <2e-16 ***
## F_AA         2 0.000194 0.000097 2.779e+30 <2e-16 ***
## Residuals   12 0.000000 0.000000                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
  • Tanto las concentraciones de ácido ascórbico como los dos tipos de riego, como factores independientes, tuvieron diferencias entre si con una significancia del 99.9%.
# Prueba de normalidad de residuos
shapiro.test(A.TAC.M2$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  A.TAC.M2$residuals
## W = 0.57247, p-value = 9.003e-06
  • Los datos no tienen una distribución normal, por lo tanto, se debe aplicar una prueba que soporte la distribución de estos datos.
TukeyHSD(A.TAC.M2)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = TAC ~ F_riego * F_AA, data = datos.TAC.M2)
## 
## $F_riego
##            diff       lwr       upr p adj
## 1-0.5 0.0357369 0.0357369 0.0357369     0
## 
## $F_AA
##                          diff          lwr          upr p adj
## 1000 ppm-0 ppm   -0.004515476 -0.004515476 -0.004515476     0
## 600 ppm-0 ppm     0.005320238  0.005320238  0.005320238     0
## 600 ppm-1000 ppm  0.009835714  0.009835714  0.009835714     0
  • Las concentraciones de ácido áscórbico y los dos tipos de riego presenta diferencias significativas.
# Anova - TAC - Muestreo 2 - Comparación entre los tratamientos

A.TAC.M2.CT <- aov(TAC ~ Tratamiento, data=datos.TAC.M2)
summary(A.TAC.M2.CT)
##             Df   Sum Sq  Mean Sq   F value Pr(>F)    
## Tratamiento  3 0.004026 0.001342 1.776e+31 <2e-16 ***
## Residuals   12 0.000000 0.000000                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Tukey_A.TAC.M2.CT <- TukeyHSD(A.TAC.M2.CT)
Tukey_A.TAC.M2.CT
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = TAC ~ Tratamiento, data = datos.TAC.M2)
## 
## $Tratamiento
##                                        diff          lwr          upr p adj
## 50 + AS 1000ppm-50 - AS        -0.004314286 -0.004314286 -0.004314286     0
## 50 + AS 600ppm-50 - AS          0.005521429  0.005521429  0.005521429     0
## Control-50 - AS                 0.036139286  0.036139286  0.036139286     0
## 50 + AS 600ppm-50 + AS 1000ppm  0.009835714  0.009835714  0.009835714     0
## Control-50 + AS 1000ppm         0.040453571  0.040453571  0.040453571     0
## Control-50 + AS 600ppm          0.030617857  0.030617857  0.030617857     0
  • Podemos observar que todos los tratamientos tienen diferencias signifciativas con respecto a su control.

Análisis estadístico - Muestreo 3

# Datos - Tasa absoluta de crecimiento - Muestreo 3

datos.TAC.M3 <- data.frame(Ind_M3$`Factor riego`, Ind_M3$`Factor ácido ascórbico`, Ind_M3$Tratamiento, Ind_M3$`Tasa absoluta de crecimiento (gr/dia)`)
colnames(datos.TAC.M3) <- c("F_riego", "F_AA", "Tratamiento", "TAC")
datos.TAC.M3
datos.TAC.M3$F_riego <- as.factor(datos.TAC.M3$F_riego)
datos.TAC.M3$F_AA <- as.factor(datos.TAC.M3$F_AA)
str(datos.TAC.M3)
## 'data.frame':    16 obs. of  4 variables:
##  $ F_riego    : Factor w/ 2 levels "0.5","1": 2 2 2 2 1 1 1 1 1 1 ...
##  $ F_AA       : Factor w/ 3 levels "0 ppm","1000 ppm",..: 1 1 1 1 1 1 1 1 3 3 ...
##  $ Tratamiento: chr  "Control" "Control" "Control" "Control" ...
##  $ TAC        : num  0.1182 0.1182 0.1182 0.1182 0.0263 ...
# Anova - Tasa absoluta de crecimiento - Muestreo 3
A.TAC.M3 <- aov(TAC ~ F_riego*F_AA, data = datos.TAC.M3)
summary(A.TAC.M3)
##             Df   Sum Sq  Mean Sq   F value Pr(>F)    
## F_riego      1 0.021738 0.021738 5.923e+31 <2e-16 ***
## F_AA         2 0.000935 0.000467 1.273e+30 <2e-16 ***
## Residuals   12 0.000000 0.000000                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
  • Tanto las concentraciones de ácido ascórbico como los dos tipos de riego, como factores independientes, tuvieron diferencias entre si con una significancia del 99.9%.
# Prueba de normalidad de residuos
shapiro.test(A.TAC.M3$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  A.TAC.M3$residuals
## W = 0.58229, p-value = 1.107e-05
  • Los datos no tienen una distribución normal, por lo tanto, se debe aplicar una prueba que soporte la distribución de estos datos.
TukeyHSD(A.TAC.M3)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = TAC ~ F_riego * F_AA, data = datos.TAC.M3)
## 
## $F_riego
##             diff        lwr        upr p adj
## 1-0.5 0.08512262 0.08512262 0.08512262     0
## 
## $F_AA
##                          diff          lwr          upr p adj
## 1000 ppm-0 ppm    0.015847024  0.015847024  0.015847024     0
## 600 ppm-0 ppm    -0.002320833 -0.002320833 -0.002320833     0
## 600 ppm-1000 ppm -0.018167857 -0.018167857 -0.018167857     0
  • Las concentraciones de ácido áscórbico y los dos tipos de riego presenta diferencias significativas.
# Anova - TAC - Muestreo 3 - Comparación entre los tratamientos

A.TAC.M3.CT <- aov(TAC ~ Tratamiento, data=datos.TAC.M3)
summary(A.TAC.M3.CT)
##             Df  Sum Sq  Mean Sq   F value Pr(>F)    
## Tratamiento  3 0.02267 0.007557 1.118e+31 <2e-16 ***
## Residuals   12 0.00000 0.000000                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Tukey_A.TAC.M3.CT <- TukeyHSD(A.TAC.M3.CT)
Tukey_A.TAC.M3.CT
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = TAC ~ Tratamiento, data = datos.TAC.M3)
## 
## $Tratamiento
##                                        diff          lwr          upr p adj
## 50 + AS 1000ppm-50 - AS         0.019228571  0.019228571  0.019228571     0
## 50 + AS 600ppm-50 - AS          0.001060714  0.001060714  0.001060714     0
## Control-50 - AS                 0.091885714  0.091885714  0.091885714     0
## 50 + AS 600ppm-50 + AS 1000ppm -0.018167857 -0.018167857 -0.018167857     0
## Control-50 + AS 1000ppm         0.072657143  0.072657143  0.072657143     0
## Control-50 + AS 600ppm          0.090825000  0.090825000  0.090825000     0
  • Podemos observar que todos los tratamientos tienen diferencias signifciativas con respecto a su control.

Análisis estadístico - Muestreo 4

# Datos - Tasa absoluta de crecimiento - Muestreo 4

datos.TAC.M4 <- data.frame(Ind_M4$`Factor riego`, Ind_M4$`Factor ácido ascórbico`, Ind_M4$Tratamiento, Ind_M4$`Tasa absoluta de crecimiento (gr/dia)`)
colnames(datos.TAC.M4) <- c("F_riego", "F_AA", "Tratamiento", "TAC")
datos.TAC.M4
datos.TAC.M4$F_riego <- as.factor(datos.TAC.M4$F_riego)
datos.TAC.M4$F_AA <- as.factor(datos.TAC.M4$F_AA)
str(datos.TAC.M4)
## 'data.frame':    16 obs. of  4 variables:
##  $ F_riego    : Factor w/ 2 levels "0.5","1": 2 2 2 2 1 1 1 1 1 1 ...
##  $ F_AA       : Factor w/ 3 levels "0 ppm","1000 ppm",..: 1 1 1 1 1 1 1 1 3 3 ...
##  $ Tratamiento: chr  "Control" "Control" "Control" "Control" ...
##  $ TAC        : num  0.1373 0.1373 0.1373 0.1373 0.0289 ...
# Anova - Tasa absoluta de crecimiento - Muestreo 4
A.TAC.M4 <- aov(TAC ~ F_riego*F_AA, data = datos.TAC.M4)
summary(A.TAC.M4)
##             Df   Sum Sq  Mean Sq   F value Pr(>F)    
## F_riego      1 0.030032 0.030032 6.105e+31 <2e-16 ***
## F_AA         2 0.000666 0.000333 6.774e+29 <2e-16 ***
## Residuals   12 0.000000 0.000000                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
  • Tanto las concentraciones de ácido ascórbico como los dos tipos de riego, como factores independientes, tuvieron diferencias entre si con una significancia del 99.9%.
# Prueba de normalidad de residuos
shapiro.test(A.TAC.M4$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  A.TAC.M4$residuals
## W = 0.7245, p-value = 0.0003184
  • Los datos no tienen una distribución normal, por lo tanto, se debe aplicar una prueba que soporte la distribución de estos datos.
TukeyHSD(A.TAC.M4)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = TAC ~ F_riego * F_AA, data = datos.TAC.M4)
## 
## $F_riego
##            diff       lwr       upr p adj
## 1-0.5 0.1000536 0.1000536 0.1000536     0
## 
## $F_AA
##                         diff         lwr         upr p adj
## 1000 ppm-0 ppm   0.002585714 0.002585714 0.002585714     0
## 600 ppm-0 ppm    0.013928571 0.013928571 0.013928571     0
## 600 ppm-1000 ppm 0.011342857 0.011342857 0.011342857     0
  • Las concentraciones de ácido áscórbico y los dos tipos de riego presenta diferencias significativas.
# Anova - TAC - Muestreo 4 - Comparación entre los tratamientos

A.TAC.M4.CT <- aov(TAC ~ Tratamiento, data=datos.TAC.M4)
summary(A.TAC.M4.CT)
##             Df Sum Sq Mean Sq   F value Pr(>F)    
## Tratamiento  3 0.0307 0.01023 1.158e+31 <2e-16 ***
## Residuals   12 0.0000 0.00000                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Tukey_A.TAC.M4.CT <- TukeyHSD(A.TAC.M4.CT)
Tukey_A.TAC.M4.CT
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = TAC ~ Tratamiento, data = datos.TAC.M4)
## 
## $Tratamiento
##                                       diff         lwr         upr p adj
## 50 + AS 1000ppm-50 - AS        0.006714286 0.006714286 0.006714286     0
## 50 + AS 600ppm-50 - AS         0.018057143 0.018057143 0.018057143     0
## Control-50 - AS                0.108310714 0.108310714 0.108310714     0
## 50 + AS 600ppm-50 + AS 1000ppm 0.011342857 0.011342857 0.011342857     0
## Control-50 + AS 1000ppm        0.101596429 0.101596429 0.101596429     0
## Control-50 + AS 600ppm         0.090253571 0.090253571 0.090253571     0
  • Podemos observar que todos los tratamientos tienen diferencias signifciativas con respecto a su control.

Análisis descriptivo - Tasa de asimilación neta

# Datos - Gráfico - Tasa de asimilación neta

Datos.G.TAC <- data.frame(factor(Tratamientos, ordered = TRUE, levels = c("Control", "50 - AS", "50 + AS 600ppm", "50 + AS 1000ppm")), Ind_M1$`Tasa absoluta de crecimiento (gr/dia)`, Ind_M2$`Tasa absoluta de crecimiento (gr/dia)`, Ind_M3$`Tasa absoluta de crecimiento (gr/dia)`, Ind_M4$`Tasa absoluta de crecimiento (gr/dia)`)
colnames(Datos.G.TAC) <- c("Tratamientos", "31", "38","45", "52")
Datos.G.TAC
# Unificar la variable respuesta en una sola columna
df.long.TAC = gather(Datos.G.TAC, dds, TAC, 2:5)
df.long.TAC
# Diferencias significativas con el control
#          M1  M2  M3  M4
DS.TAC <- c("", "", "", "",  #T1
           "*", "*", "*", "*", #T2
           "*", "*", "*", "*",  #T3
           "*", "*", "*", "*") #T4

# Media y desviación estandar de la media de los tratamientos en los diferentes muestreos.
df.sumzd.TAC = group_by(df.long.TAC, Tratamientos, dds, ) %>% summarise(mean = mean(TAC), sd = sd(TAC))
## `summarise()` has grouped output by 'Tratamientos'. You can override using the
## `.groups` argument.
# Con diferencias significativas de los tratamientos con su control
df.sumzd.TAC.ds <- data.frame(df.sumzd.TAC, DS.TAC)
df.sumzd.TAC.ds
G.TAC <- ggplot(df.sumzd.TAC, aes(x = dds, y = mean, group = Tratamientos, colour = Tratamientos)) +
  scale_colour_manual(values=c("red", "#EFA30C", "blue", "green"))+
  geom_line() +
  geom_point( size=2, shape = 21, fill="white") +
  theme_test()+
  ggtitle("Tasa absoluta de crecimiento \nen los diferentes muestreos")+ theme(plot.title = element_text(family = "Times New Roman",
size = rel(2),
vjust = 0.5, 
hjust = 0.5))+
  theme(axis.text.x = element_text(size=15),
        axis.text.y = element_text(size=15))+
  labs(x = "Días después de siembra", y = "gr / día")+
  theme(axis.title.x = element_text(family = "Times New Roman", size = rel(1.5)), axis.title.y = element_text(family = "Times New Roman", size = rel(1.5)))+
  theme(legend.title = element_text(family = "Times New Roman"))

G.TAC

Indice de área foliar

Análisis estadístico - Muestreo 1

# Datos - Indice de área foliar - Muestreo 1

datos.IAF.M1 <- data.frame(Ind_M1$`Factor riego`, Ind_M1$`Factor ácido ascórbico`, Ind_M1$Tratamiento, Ind_M1$`Indice de área foliar`)
colnames(datos.IAF.M1) <- c("F_riego", "F_AA", "Tratamiento", "IAF")
datos.IAF.M1
datos.IAF.M1$F_riego <- as.factor(datos.IAF.M1$F_riego)
datos.IAF.M1$F_AA <- as.factor(datos.IAF.M1$F_AA)
str(datos.IAF.M1)
## 'data.frame':    16 obs. of  4 variables:
##  $ F_riego    : Factor w/ 2 levels "0.5","1": 2 2 2 2 1 1 1 1 1 1 ...
##  $ F_AA       : Factor w/ 3 levels "0 ppm","1000 ppm",..: 1 1 1 1 1 1 1 1 3 3 ...
##  $ Tratamiento: chr  "Control" "Control" "Control" "Control" ...
##  $ IAF        : num  0.472 0.472 0.472 0.472 0.35 ...
# Anova - Indice de área foliar - Muestreo 1
A.IAF.M1 <- aov(IAF ~ F_riego*F_AA, data = datos.IAF.M1)
summary(A.IAF.M1)
##             Df  Sum Sq Mean Sq   F value Pr(>F)    
## F_riego      1 0.08831 0.08831 1.859e+31 <2e-16 ***
## F_AA         2 0.01726 0.00863 1.817e+30 <2e-16 ***
## Residuals   12 0.00000 0.00000                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
  • Tanto las concentraciones de ácido ascórbico como los dos tipos de riego, como factores independientes, tuvieron diferencias entre si con una significancia del 99.9%.
# Prueba de normalidad de residuos
shapiro.test(A.IAF.M1$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  A.IAF.M1$residuals
## W = 0.59302, p-value = 1.392e-05
  • Los datos no tienen una distribución normal, por lo tanto, se debe aplicar una prueba que soporte la distribución de estos datos.
TukeyHSD(A.IAF.M1)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = IAF ~ F_riego * F_AA, data = datos.IAF.M1)
## 
## $F_riego
##           diff      lwr      upr p adj
## 1-0.5 0.171575 0.171575 0.171575     0
## 
## $F_AA
##                        diff        lwr        upr p adj
## 1000 ppm-0 ppm   -0.0678375 -0.0678375 -0.0678375     0
## 600 ppm-0 ppm    -0.0302625 -0.0302625 -0.0302625     0
## 600 ppm-1000 ppm  0.0375750  0.0375750  0.0375750     0
  • Las concentraciones de ácido áscórbico y los dos tipos de riego presenta diferencias significativas.
# Anova - IAF - Muestreo 1 - Comparación entre los tratamientos

A.IAF.M1.CT <- aov(IAF ~ Tratamiento, data=datos.IAF.M1)
summary(A.IAF.M1.CT)
##             Df Sum Sq Mean Sq   F value Pr(>F)    
## Tratamiento  3 0.1056 0.03519 5.281e+30 <2e-16 ***
## Residuals   12 0.0000 0.00000                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Tukey_A.IAF.M1.CT <- TukeyHSD(A.IAF.M1.CT)
Tukey_A.IAF.M1.CT
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = IAF ~ Tratamiento, data = datos.IAF.M1)
## 
## $Tratamiento
##                                      diff        lwr        upr p adj
## 50 + AS 1000ppm-50 - AS        -0.0923625 -0.0923625 -0.0923625     0
## 50 + AS 600ppm-50 - AS         -0.0547875 -0.0547875 -0.0547875     0
## Control-50 - AS                 0.1225250  0.1225250  0.1225250     0
## 50 + AS 600ppm-50 + AS 1000ppm  0.0375750  0.0375750  0.0375750     0
## Control-50 + AS 1000ppm         0.2148875  0.2148875  0.2148875     0
## Control-50 + AS 600ppm          0.1773125  0.1773125  0.1773125     0
  • Podemos observar que todos los tratamientos tienen diferencias signifciativas con respecto a su control.

Análisis estadístico - Muestreo 2

# Datos - Indice de área foliar - Muestreo 2

datos.IAF.M2 <- data.frame(Ind_M2$`Factor riego`, Ind_M2$`Factor ácido ascórbico`, Ind_M2$Tratamiento, Ind_M2$`Indice de área foliar`)
colnames(datos.IAF.M2) <- c("F_riego", "F_AA", "Tratamiento", "IAF")
datos.IAF.M2
datos.IAF.M2$F_riego <- as.factor(datos.IAF.M2$F_riego)
datos.IAF.M2$F_AA <- as.factor(datos.IAF.M2$F_AA)
str(datos.IAF.M2)
## 'data.frame':    16 obs. of  4 variables:
##  $ F_riego    : Factor w/ 2 levels "0.5","1": 2 2 2 2 1 1 1 1 1 1 ...
##  $ F_AA       : Factor w/ 3 levels "0 ppm","1000 ppm",..: 1 1 1 1 1 1 1 1 3 3 ...
##  $ Tratamiento: chr  "Control" "Control" "Control" "Control" ...
##  $ IAF        : num  1.317 1.317 1.317 1.317 0.789 ...
# Anova - Indice de área foliar - Muestreo 2
A.IAF.M2 <- aov(IAF ~ F_riego*F_AA, data = datos.IAF.M2)
summary(A.IAF.M2)
##             Df Sum Sq Mean Sq   F value Pr(>F)    
## F_riego      1 1.0991  1.0991 1.577e+31 <2e-16 ***
## F_AA         2 0.0385  0.0193 2.763e+29 <2e-16 ***
## Residuals   12 0.0000  0.0000                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
  • Tanto las concentraciones de ácido ascórbico como los dos tipos de riego, como factores independientes, tuvieron diferencias entre si con una significancia del 99.9%.
# Prueba de normalidad de residuos
shapiro.test(A.IAF.M2$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  A.IAF.M2$residuals
## W = 0.57127, p-value = 8.78e-06
  • Los datos no tienen una distribución normal, por lo tanto, se debe aplicar una prueba que soporte la distribución de estos datos.
TukeyHSD(A.IAF.M2)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = IAF ~ F_riego * F_AA, data = datos.IAF.M2)
## 
## $F_riego
##            diff       lwr       upr p adj
## 1-0.5 0.6052875 0.6052875 0.6052875     0
## 
## $F_AA
##                         diff         lwr         upr p adj
## 1000 ppm-0 ppm   -0.09549375 -0.09549375 -0.09549375     0
## 600 ppm-0 ppm    -0.05918125 -0.05918125 -0.05918125     0
## 600 ppm-1000 ppm  0.03631250  0.03631250  0.03631250     0
  • Las concentraciones de ácido áscórbico y los dos tipos de riego presenta diferencias significativas.
# Anova - IAF - Muestreo 2 - Comparación entre los tratamientos

A.IAF.M2.CT <- aov(IAF ~ Tratamiento, data=datos.IAF.M2)
summary(A.IAF.M2.CT)
##             Df Sum Sq Mean Sq   F value Pr(>F)    
## Tratamiento  3  1.138  0.3792 4.585e+30 <2e-16 ***
## Residuals   12  0.000  0.0000                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Tukey_A.IAF.M2.CT <- TukeyHSD(A.IAF.M2.CT)
Tukey_A.IAF.M2.CT
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = IAF ~ Tratamiento, data = datos.IAF.M2)
## 
## $Tratamiento
##                                      diff        lwr        upr p adj
## 50 + AS 1000ppm-50 - AS        -0.1341625 -0.1341625 -0.1341625     0
## 50 + AS 600ppm-50 - AS         -0.0978500 -0.0978500 -0.0978500     0
## Control-50 - AS                 0.5279500  0.5279500  0.5279500     0
## 50 + AS 600ppm-50 + AS 1000ppm  0.0363125  0.0363125  0.0363125     0
## Control-50 + AS 1000ppm         0.6621125  0.6621125  0.6621125     0
## Control-50 + AS 600ppm          0.6258000  0.6258000  0.6258000     0
  • Podemos observar que todos los tratamientos tienen diferencias signifciativas con respecto a su control.

Análisis estadístico - Muestreo 3

# Datos - Indice de área foliar - Muestreo 3

datos.IAF.M3 <- data.frame(Ind_M3$`Factor riego`, Ind_M3$`Factor ácido ascórbico`, Ind_M3$Tratamiento, Ind_M3$`Indice de área foliar`)
colnames(datos.IAF.M3) <- c("F_riego", "F_AA", "Tratamiento", "IAF")
datos.IAF.M3
datos.IAF.M3$F_riego <- as.factor(datos.IAF.M3$F_riego)
datos.IAF.M3$F_AA <- as.factor(datos.IAF.M3$F_AA)
str(datos.IAF.M3)
## 'data.frame':    16 obs. of  4 variables:
##  $ F_riego    : Factor w/ 2 levels "0.5","1": 2 2 2 2 1 1 1 1 1 1 ...
##  $ F_AA       : Factor w/ 3 levels "0 ppm","1000 ppm",..: 1 1 1 1 1 1 1 1 3 3 ...
##  $ Tratamiento: chr  "Control" "Control" "Control" "Control" ...
##  $ IAF        : num  2.027 2.027 2.027 2.027 0.984 ...
# Anova - Indice de área foliar - Muestreo 3
A.IAF.M3 <- aov(IAF ~ F_riego*F_AA, data = datos.IAF.M3)
summary(A.IAF.M3)
##             Df Sum Sq Mean Sq   F value Pr(>F)    
## F_riego      1  3.870   3.870 6.112e+30 <2e-16 ***
## F_AA         2  0.056   0.028 4.409e+28 <2e-16 ***
## Residuals   12  0.000   0.000                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
  • Tanto las concentraciones de ácido ascórbico como los dos tipos de riego, como factores independientes, tuvieron diferencias entre si con una significancia del 99.9%.
# Prueba de normalidad de residuos
shapiro.test(A.IAF.M3$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  A.IAF.M3$residuals
## W = 0.55562, p-value = 6.354e-06
  • Los datos no tienen una distribución normal, por lo tanto, se debe aplicar una prueba que soporte la distribución de estos datos.
TukeyHSD(A.IAF.M3)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = IAF ~ F_riego * F_AA, data = datos.IAF.M3)
## 
## $F_riego
##           diff      lwr      upr p adj
## 1-0.5 1.135852 1.135852 1.135853     0
## 
## $F_AA
##                         diff         lwr         upr p adj
## 1000 ppm-0 ppm   -0.11454688 -0.11454688 -0.11454687     0
## 600 ppm-0 ppm    -0.07204063 -0.07204063 -0.07204062     0
## 600 ppm-1000 ppm  0.04250625  0.04250625  0.04250625     0
  • Las concentraciones de ácido áscórbico y los dos tipos de riego presenta diferencias significativas.
# Anova - IAF - Muestreo 3 - Comparación entre los tratamientos

A.IAF.M3.CT <- aov(IAF ~ Tratamiento, data=datos.IAF.M3)
summary(A.IAF.M3.CT)
##             Df Sum Sq Mean Sq   F value Pr(>F)    
## Tratamiento  3  3.926   1.309 6.044e+30 <2e-16 ***
## Residuals   12  0.000   0.000                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Tukey_A.IAF.M3.CT <- TukeyHSD(A.IAF.M3.CT)
Tukey_A.IAF.M3.CT
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = IAF ~ Tratamiento, data = datos.IAF.M3)
## 
## $Tratamiento
##                                       diff         lwr         upr p adj
## 50 + AS 1000ppm-50 - AS        -0.16119375 -0.16119375 -0.16119375     0
## 50 + AS 600ppm-50 - AS         -0.11868750 -0.11868750 -0.11868750     0
## Control-50 - AS                 1.04255875  1.04255875  1.04255875     0
## 50 + AS 600ppm-50 + AS 1000ppm  0.04250625  0.04250625  0.04250625     0
## Control-50 + AS 1000ppm         1.20375250  1.20375250  1.20375250     0
## Control-50 + AS 600ppm          1.16124625  1.16124625  1.16124625     0
  • Podemos observar que todos los tratamientos tienen diferencias signifciativas con respecto a su control.

Análisis estadístico - Muestreo 4

# Datos - Indice de área foliar - Muestreo 4

datos.IAF.M4 <- data.frame(Ind_M4$`Factor riego`, Ind_M4$`Factor ácido ascórbico`, Ind_M4$Tratamiento, Ind_M4$`Indice de área foliar`)
colnames(datos.IAF.M4) <- c("F_riego", "F_AA", "Tratamiento", "IAF")
datos.IAF.M4
datos.IAF.M4$F_riego <- as.factor(datos.IAF.M4$F_riego)
datos.IAF.M4$F_AA <- as.factor(datos.IAF.M4$F_AA)
str(datos.IAF.M4)
## 'data.frame':    16 obs. of  4 variables:
##  $ F_riego    : Factor w/ 2 levels "0.5","1": 2 2 2 2 1 1 1 1 1 1 ...
##  $ F_AA       : Factor w/ 3 levels "0 ppm","1000 ppm",..: 1 1 1 1 1 1 1 1 3 3 ...
##  $ Tratamiento: chr  "Control" "Control" "Control" "Control" ...
##  $ IAF        : num  2.319 2.319 2.319 2.319 0.965 ...
# Anova - Indice de área foliar - Muestreo 4
A.IAF.M4 <- aov(IAF ~ F_riego*F_AA, data = datos.IAF.M4)
summary(A.IAF.M4)
##             Df Sum Sq Mean Sq   F value Pr(>F)    
## F_riego      1  5.685   5.685 2.908e+32 <2e-16 ***
## F_AA         2  0.023   0.011 5.841e+29 <2e-16 ***
## Residuals   12  0.000   0.000                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
  • Tanto las concentraciones de ácido ascórbico como los dos tipos de riego, como factores independientes, tuvieron diferencias entre si con una significancia del 99.9%.
# Prueba de normalidad de residuos
shapiro.test(A.IAF.M4$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  A.IAF.M4$residuals
## W = 0.67844, p-value = 9.863e-05
  • Los datos no tienen una distribución normal, por lo tanto, se debe aplicar una prueba que soporte la distribución de estos datos.
TukeyHSD(A.IAF.M4)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = IAF ~ F_riego * F_AA, data = datos.IAF.M4)
## 
## $F_riego
##          diff     lwr     upr p adj
## 1-0.5 1.37659 1.37659 1.37659     0
## 
## $F_AA
##                         diff         lwr         upr p adj
## 1000 ppm-0 ppm   -0.07254833 -0.07254833 -0.07254833     0
## 600 ppm-0 ppm     0.02665167  0.02665167  0.02665167     0
## 600 ppm-1000 ppm  0.09920000  0.09920000  0.09920000     0
  • Las concentraciones de ácido áscórbico y los dos tipos de riego presenta diferencias significativas.
# Anova - IAF - Muestreo 4 - Comparación entre los tratamientos

A.IAF.M4.CT <- aov(IAF ~ Tratamiento, data=datos.IAF.M4)
summary(A.IAF.M4.CT)
##             Df Sum Sq Mean Sq   F value Pr(>F)    
## Tratamiento  3  5.708   1.903 8.284e+31 <2e-16 ***
## Residuals   12  0.000   0.000                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Tukey_A.IAF.M4.CT <- TukeyHSD(A.IAF.M4.CT)
Tukey_A.IAF.M4.CT
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = IAF ~ Tratamiento, data = datos.IAF.M4)
## 
## $Tratamiento
##                                      diff        lwr        upr p adj
## 50 + AS 1000ppm-50 - AS        -0.0840225 -0.0840225 -0.0840225     0
## 50 + AS 600ppm-50 - AS          0.0151775  0.0151775  0.0151775     0
## Control-50 - AS                 1.3536413  1.3536412  1.3536413     0
## 50 + AS 600ppm-50 + AS 1000ppm  0.0992000  0.0992000  0.0992000     0
## Control-50 + AS 1000ppm         1.4376638  1.4376637  1.4376638     0
## Control-50 + AS 600ppm          1.3384638  1.3384637  1.3384638     0
  • Podemos observar que todos los tratamientos tienen diferencias signifciativas con respecto a su control.

Análisis descriptivo - Tasa de asimilación neta

# Datos - Gráfico - Tasa de asimilación neta

Datos.G.IAF <- data.frame(factor(Tratamientos, ordered = TRUE, levels = c("Control", "50 - AS", "50 + AS 600ppm", "50 + AS 1000ppm")), Ind_M1$`Indice de área foliar`, Ind_M2$`Indice de área foliar`, Ind_M3$`Indice de área foliar`, Ind_M4$`Indice de área foliar`)
colnames(Datos.G.IAF) <- c("Tratamientos", "31", "38","45", "52")
Datos.G.IAF
# Unificar la variable respuesta en una sola columna
df.long.IAF = gather(Datos.G.IAF, dds, IAF, 2:5)
df.long.IAF
# Diferencias significativas con el control
#          M1  M2  M3  M4
DS.IAF <- c("", "", "", "",  #T1
           "*", "*", "*", "*", #T2
           "*", "*", "*", "*",  #T3
           "*", "*", "*", "*") #T4

# Media y desviación estandar de la media de los tratamientos en los diferentes muestreos.
df.sumzd.IAF = group_by(df.long.IAF, Tratamientos, dds, ) %>% summarise(mean = mean(IAF), sd = sd(IAF))
## `summarise()` has grouped output by 'Tratamientos'. You can override using the
## `.groups` argument.
# Con diferencias significativas de los tratamientos con su control
df.sumzd.IAF.ds <- data.frame(df.sumzd.IAF, DS.IAF)
df.sumzd.IAF.ds
G.IAF <- ggplot(df.sumzd.IAF, aes(x = dds, y = mean, group = Tratamientos, colour = Tratamientos)) +
  scale_colour_manual(values=c("red", "yellow", "blue", "green"))+
  geom_line() +
  geom_point( size=2, shape = 21, fill="white") +
  theme_test()+
  ggtitle("Indice de área foliar \nen los diferentes muestreos")+ theme(plot.title = element_text(family = "Times New Roman",
size = rel(1.5),
vjust = 0.5, 
hjust = 0.5))+
  labs(x = "Días después de siembra", y = "Indice")+
  theme(axis.title.x = element_text(family = "Times New Roman"), axis.title.y = element_text(family = "Times New Roman"))+
  theme(legend.title = element_text(family = "Times New Roman"))

G.IAF

Área foliar

Análisis estadístico - Muestreo 1

# Datos - Área foliar - Muestreo 1

datos.AF.M1 <- data.frame(Var_M1$`Factor riego`, Var_M1$`Factor ácido ascórbico`, Var_M1$Tratamiento, Var_M1$`Área Foliar (cm2)`)
colnames(datos.AF.M1) <- c("F_riego", "F_AA", "Tratamiento", "AF")
datos.AF.M1
datos.AF.M1$F_riego <- as.factor(datos.AF.M1$F_riego)
datos.AF.M1$F_AA <- as.factor(datos.AF.M1$F_AA)
str(datos.AF.M1)
## 'data.frame':    16 obs. of  4 variables:
##  $ F_riego    : Factor w/ 2 levels "0.5","1": 2 2 2 2 1 1 1 1 1 1 ...
##  $ F_AA       : Factor w/ 3 levels "0 ppm","1000 ppm",..: 1 1 1 1 1 1 1 1 3 3 ...
##  $ Tratamiento: chr  "Control" "Control" "Control" "Control" ...
##  $ AF         : num  86.7 95.7 86.9 108.7 56.3 ...
# Anova - Área foliar - Muestreo 1
A.AF.M1 <- aov(AF ~ F_riego*F_AA, data = datos.AF.M1)
summary(A.AF.M1)
##             Df Sum Sq Mean Sq F value   Pr(>F)    
## F_riego      1   3533    3533  21.396 0.000585 ***
## F_AA         2    690     345   2.091 0.166342    
## Residuals   12   1981     165                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
  • Los dos tipos de riego, como factores independientes, tuvieron diferencias entre si con una significancia del 99.9%.
# Prueba de normalidad de residuos
shapiro.test(A.AF.M1$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  A.AF.M1$residuals
## W = 0.95392, p-value = 0.5542
  • El hecho de que no sea significativo (p-value > 0.05), representa que los datos tienen una distribución normal.
TukeyHSD(A.AF.M1)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = AF ~ F_riego * F_AA, data = datos.AF.M1)
## 
## $F_riego
##         diff      lwr      upr     p adj
## 1-0.5 34.315 18.15126 50.47874 0.0005846
## 
## $F_AA
##                      diff       lwr       upr     p adj
## 1000 ppm-0 ppm   -13.5675 -34.55988  7.424882 0.2364517
## 600 ppm-0 ppm     -6.0525 -27.04488 14.939882 0.7281723
## 600 ppm-1000 ppm   7.5150 -16.72492 31.754915 0.6940372
  • Los dos tipos de riego presenta diferencias significativas.
# Anova - AF - Muestreo 1 - Comparación entre los tratamientos

A.AF.M1.CT <- aov(AF ~ Tratamiento, data=datos.AF.M1)
summary(A.AF.M1.CT)
##             Df Sum Sq Mean Sq F value  Pr(>F)   
## Tratamiento  3   4223  1407.6   8.526 0.00265 **
## Residuals   12   1981   165.1                   
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Tukey_A.AF.M1.CT <- TukeyHSD(A.AF.M1.CT)
Tukey_A.AF.M1.CT
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = AF ~ Tratamiento, data = datos.AF.M1)
## 
## $Tratamiento
##                                    diff        lwr       upr     p adj
## 50 + AS 1000ppm-50 - AS        -18.4725 -45.447608  8.502608 0.2296943
## 50 + AS 600ppm-50 - AS         -10.9575 -37.932608 16.017608 0.6348450
## Control-50 - AS                 24.5050  -2.470108 51.480108 0.0795494
## 50 + AS 600ppm-50 + AS 1000ppm   7.5150 -19.460108 34.490108 0.8406491
## Control-50 + AS 1000ppm         42.9775  16.002392 69.952608 0.0023759
## Control-50 + AS 600ppm          35.4625   8.487392 62.437608 0.0097795
  • Podemos observar que los tratamientos azul (50 + AS 600ppm) y verde (50 + AS 1000ppm) tienen diferencias signifciativas con respecto a su control. Adicionalmente, el tratamiento amarillo (50 - AS), no llegó al umbral del 5%, sin embargo, puede que estos resultados se puedan tener en cuenta de manera agronómica.
A.AF.M1.DT <- duncan.test(A.AF.M1.CT, 'Tratamiento', console = T)
## 
## Study: A.AF.M1.CT ~ "Tratamiento"
## 
## Duncan's new multiple range test
## for AF 
## 
## Mean Square Error:  165.1068 
## 
## Tratamiento,  means
## 
##                      AF       std r       se   Min    Max     Q25    Q50
## 50 - AS         69.9900 13.001769 4 6.424694 56.30  87.36 63.4100 68.150
## 50 + AS 1000ppm 51.5175 17.459451 4 6.424694 26.78  66.50 46.0625 56.395
## 50 + AS 600ppm  59.0325  8.898945 4 6.424694 51.25  71.77 54.3925 56.555
## Control         94.4950 10.361346 4 6.424694 86.69 108.71 86.8475 91.290
##                     Q75
## 50 - AS         74.7300
## 50 + AS 1000ppm 61.8500
## 50 + AS 600ppm  61.1950
## Control         98.9375
## 
## Alpha: 0.05 ; DF Error: 12 
## 
## Critical Range
##        2        3        4 
## 19.79645 20.72120 21.28150 
## 
## Means with the same letter are not significantly different.
## 
##                      AF groups
## Control         94.4950      a
## 50 - AS         69.9900      b
## 50 + AS 600ppm  59.0325      b
## 50 + AS 1000ppm 51.5175      b
A.AF.M1.DT
## $statistics
##    MSerror Df     Mean       CV
##   165.1068 12 68.75875 18.68764
## 
## $parameters
##     test      name.t ntr alpha
##   Duncan Tratamiento   4  0.05
## 
## $duncan
##      Table CriticalRange
## 2 3.081307      19.79645
## 3 3.225244      20.72120
## 4 3.312453      21.28150
## 
## $means
##                      AF       std r       se   Min    Max     Q25    Q50
## 50 - AS         69.9900 13.001769 4 6.424694 56.30  87.36 63.4100 68.150
## 50 + AS 1000ppm 51.5175 17.459451 4 6.424694 26.78  66.50 46.0625 56.395
## 50 + AS 600ppm  59.0325  8.898945 4 6.424694 51.25  71.77 54.3925 56.555
## Control         94.4950 10.361346 4 6.424694 86.69 108.71 86.8475 91.290
##                     Q75
## 50 - AS         74.7300
## 50 + AS 1000ppm 61.8500
## 50 + AS 600ppm  61.1950
## Control         98.9375
## 
## $comparison
## NULL
## 
## $groups
##                      AF groups
## Control         94.4950      a
## 50 - AS         69.9900      b
## 50 + AS 600ppm  59.0325      b
## 50 + AS 1000ppm 51.5175      b
## 
## attr(,"class")
## [1] "group"

Análisis estadístico - Muestreo 2

# Datos - Área foliar - Muestreo 2

datos.AF.M2 <- data.frame(Var_M2$`Factor riego`, Var_M2$`Factor ácido ascórbico`, Var_M2$Tratamiento, Var_M2$`Área Foliar (cm2)`)
colnames(datos.AF.M2) <- c("F_riego", "F_AA", "Tratamiento", "AF")
datos.AF.M2
datos.AF.M2$F_riego <- as.factor(datos.AF.M2$F_riego)
datos.AF.M2$F_AA <- as.factor(datos.AF.M2$F_AA)
str(datos.AF.M2)
## 'data.frame':    16 obs. of  4 variables:
##  $ F_riego    : Factor w/ 2 levels "0.5","1": 2 2 2 2 1 1 1 1 1 1 ...
##  $ F_AA       : Factor w/ 3 levels "0 ppm","1000 ppm",..: 1 1 1 1 1 1 1 1 3 3 ...
##  $ Tratamiento: chr  "Control" "Control" "Control" "Control" ...
##  $ AF         : num  108 180 175 213 121 ...
# Anova - Área foliar - Muestreo 2
A.AF.M2 <- aov(AF ~ F_riego*F_AA, data = datos.AF.M2)
summary(A.AF.M2)
##             Df Sum Sq Mean Sq F value   Pr(>F)    
## F_riego      1  22573   22573   23.46 0.000402 ***
## F_AA         2    192      96    0.10 0.905687    
## Residuals   12  11544     962                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
  • Los dos tipos de riego, como factores independientes, tuvieron diferencias entre si con una significancia del 99.9%.
# Prueba de normalidad de residuos
shapiro.test(A.AF.M2$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  A.AF.M2$residuals
## W = 0.96114, p-value = 0.6825
  • El hecho de que no sea significativo (p-value > 0.05), representa que los datos tienen una distribución normal.
TukeyHSD(A.AF.M2)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = AF ~ F_riego * F_AA, data = datos.AF.M2)
## 
## $F_riego
##          diff      lwr      upr     p adj
## 1-0.5 86.7425 47.72663 125.7584 0.0004023
## 
## $F_AA
##                      diff       lwr      upr     p adj
## 1000 ppm-0 ppm   -5.53125 -56.20246 45.13996 0.9544999
## 600 ppm-0 ppm    -5.78375 -56.45496 44.88746 0.9503765
## 600 ppm-1000 ppm -0.25250 -58.76258 58.25758 0.9999269
  • Los dos tipos de riego presenta diferencias significativas.
# Anova - AF - Muestreo 2 - Comparación entre los tratamientos

A.AF.M2.CT <- aov(AF ~ Tratamiento, data=datos.AF.M2)
summary(A.AF.M2.CT)
##             Df Sum Sq Mean Sq F value  Pr(>F)   
## Tratamiento  3  22765    7588   7.888 0.00359 **
## Residuals   12  11544     962                   
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Tukey_A.AF.M2.CT <- TukeyHSD(A.AF.M2.CT)
Tukey_A.AF.M2.CT
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = AF ~ Tratamiento, data = datos.AF.M2)
## 
## $Tratamiento
##                                   diff       lwr       upr     p adj
## 50 + AS 1000ppm-50 - AS        -8.3600 -73.47226  56.75226 0.9802648
## 50 + AS 600ppm-50 - AS         -8.6125 -73.72476  56.49976 0.9785096
## Control-50 - AS                81.0850  15.97274 146.19726 0.0140108
## 50 + AS 600ppm-50 + AS 1000ppm -0.2525 -65.36476  64.85976 0.9999994
## Control-50 + AS 1000ppm        89.4450  24.33274 154.55726 0.0072115
## Control-50 + AS 600ppm         89.6975  24.58524 154.80976 0.0070692
  • Podemos observar que todos los tratamientos tienen diferencias signifciativas con respecto a su control.
A.AF.M2.DT <- duncan.test(A.AF.M2.CT, 'Tratamiento', console = T)
## 
## Study: A.AF.M2.CT ~ "Tratamiento"
## 
## Duncan's new multiple range test
## for AF 
## 
## Mean Square Error:  961.9756 
## 
## Tratamiento,  means
## 
##                       AF      std r       se    Min    Max      Q25     Q50
## 50 - AS          87.7875 31.41195 4 15.50787  45.69 120.72  76.5450  92.370
## 50 + AS 1000ppm  79.4275 25.78645 4 15.50787  56.81 111.22  59.3300  74.840
## 50 + AS 600ppm   79.1750 15.63701 4 15.50787  60.54  97.07  70.4925  79.545
## Control         168.8725 44.17845 4 15.50787 107.52 212.80 158.4225 177.585
##                      Q75
## 50 - AS         103.6125
## 50 + AS 1000ppm  94.9375
## 50 + AS 600ppm   88.2275
## Control         188.0350
## 
## Alpha: 0.05 ; DF Error: 12 
## 
## Critical Range
##        2        3        4 
## 47.78449 50.01665 51.36908 
## 
## Means with the same letter are not significantly different.
## 
##                       AF groups
## Control         168.8725      a
## 50 - AS          87.7875      b
## 50 + AS 1000ppm  79.4275      b
## 50 + AS 600ppm   79.1750      b
A.AF.M2.DT
## $statistics
##    MSerror Df     Mean       CV
##   961.9756 12 103.8156 29.87578
## 
## $parameters
##     test      name.t ntr alpha
##   Duncan Tratamiento   4  0.05
## 
## $duncan
##      Table CriticalRange
## 2 3.081307      47.78449
## 3 3.225244      50.01665
## 4 3.312453      51.36908
## 
## $means
##                       AF      std r       se    Min    Max      Q25     Q50
## 50 - AS          87.7875 31.41195 4 15.50787  45.69 120.72  76.5450  92.370
## 50 + AS 1000ppm  79.4275 25.78645 4 15.50787  56.81 111.22  59.3300  74.840
## 50 + AS 600ppm   79.1750 15.63701 4 15.50787  60.54  97.07  70.4925  79.545
## Control         168.8725 44.17845 4 15.50787 107.52 212.80 158.4225 177.585
##                      Q75
## 50 - AS         103.6125
## 50 + AS 1000ppm  94.9375
## 50 + AS 600ppm   88.2275
## Control         188.0350
## 
## $comparison
## NULL
## 
## $groups
##                       AF groups
## Control         168.8725      a
## 50 - AS          87.7875      b
## 50 + AS 1000ppm  79.4275      b
## 50 + AS 600ppm   79.1750      b
## 
## attr(,"class")
## [1] "group"

Análisis estadístico - Muestreo 3

# Datos - Área foliar - Muestreo 3

datos.AF.M3 <- data.frame(Var_M3$`Factor riego`, Var_M3$`Factor ácido ascórbico`, Var_M3$Tratamiento, Var_M3$`Área Foliar (cm2)`)
colnames(datos.AF.M3) <- c("F_riego", "F_AA", "Tratamiento", "AF")
datos.AF.M3
datos.AF.M3$F_riego <- as.factor(datos.AF.M3$F_riego)
datos.AF.M3$F_AA <- as.factor(datos.AF.M3$F_AA)
str(datos.AF.M3)
## 'data.frame':    16 obs. of  4 variables:
##  $ F_riego    : Factor w/ 2 levels "0.5","1": 2 2 2 2 1 1 1 1 1 1 ...
##  $ F_AA       : Factor w/ 3 levels "0 ppm","1000 ppm",..: 1 1 1 1 1 1 1 1 3 3 ...
##  $ Tratamiento: chr  "Control" "Control" "Control" "Control" ...
##  $ AF         : num  225 226 295 199 118 ...
# Anova - Área foliar - Muestreo 3
A.AF.M3 <- aov(AF ~ F_riego*F_AA, data = datos.AF.M3)
summary(A.AF.M3)
##             Df Sum Sq Mean Sq F value   Pr(>F)    
## F_riego      1  59160   59160  83.881 9.18e-07 ***
## F_AA         2   1167     584   0.828    0.461    
## Residuals   12   8463     705                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
  • Los dos tipos de riego, como factores independientes, tuvieron diferencias entre si con una significancia del 99.9%.
# Prueba de normalidad de residuos
shapiro.test(A.AF.M3$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  A.AF.M3$residuals
## W = 0.94459, p-value = 0.409
  • El hecho de que no sea significativo (p-value > 0.05), representa que los datos tienen una distribución normal.
TukeyHSD(A.AF.M3)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = AF ~ F_riego * F_AA, data = datos.AF.M3)
## 
## $F_riego
##          diff      lwr      upr p adj
## 1-0.5 140.428 107.0208 173.8352 9e-07
## 
## $F_AA
##                        diff       lwr      upr     p adj
## 1000 ppm-0 ppm   -17.378125 -60.76522 26.00897 0.5503353
## 600 ppm-0 ppm     -8.624375 -52.01147 34.76272 0.8581478
## 600 ppm-1000 ppm   8.753750 -41.34535 58.85285 0.8881978
  • Los dos tipos de riego presenta diferencias significativas.
# Anova - AF - Muestreo 3 - Comparación entre los tratamientos

A.AF.M3.CT <- aov(AF ~ Tratamiento, data=datos.AF.M3)
summary(A.AF.M3.CT)
##             Df Sum Sq Mean Sq F value   Pr(>F)    
## Tratamiento  3  60328   20109   28.51 9.62e-06 ***
## Residuals   12   8463     705                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Tukey_A.AF.M3.CT <- TukeyHSD(A.AF.M3.CT)
Tukey_A.AF.M3.CT
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = AF ~ Tratamiento, data = datos.AF.M3)
## 
## $Tratamiento
##                                     diff       lwr       upr     p adj
## 50 + AS 1000ppm-50 - AS        -23.87875 -79.63096  31.87346 0.5965738
## 50 + AS 600ppm-50 - AS         -15.12500 -70.87721  40.62721 0.8506567
## Control-50 - AS                127.42675  71.67454 183.17896 0.0000993
## 50 + AS 600ppm-50 + AS 1000ppm   8.75375 -46.99846  64.50596 0.9650692
## Control-50 + AS 1000ppm        151.30550  95.55329 207.05771 0.0000181
## Control-50 + AS 600ppm         142.55175  86.79954 198.30396 0.0000331
  • Podemos observar que todos los tratamientos tienen diferencias signifciativas con respecto a su control.
A.AF.M3.DT <- duncan.test(A.AF.M3.CT, 'Tratamiento', console = T)
## 
## Study: A.AF.M3.CT ~ "Tratamiento"
## 
## Duncan's new multiple range test
## for AF 
## 
## Mean Square Error:  705.2817 
## 
## Tratamiento,  means
## 
##                        AF       std r       se     Min     Max      Q25
## 50 - AS         109.03425 22.838105 4 13.27857  75.192 125.306 106.8682
## 50 + AS 1000ppm  85.15550  9.616382 4 13.27857  76.353  95.340  77.2605
## 50 + AS 600ppm   93.90925 23.015248 4 13.27857  70.058 123.768  80.1155
## Control         236.46100 40.955725 4 13.27857 199.471 295.030 218.6778
##                      Q50      Q75
## 50 - AS         117.8195 119.9855
## 50 + AS 1000ppm  84.4645  92.3595
## 50 + AS 600ppm   90.9055 104.6993
## Control         225.6715 243.4547
## 
## Alpha: 0.05 ; DF Error: 12 
## 
## Critical Range
##        2        3        4 
## 40.91535 42.82662 43.98464 
## 
## Means with the same letter are not significantly different.
## 
##                        AF groups
## Control         236.46100      a
## 50 - AS         109.03425      b
## 50 + AS 600ppm   93.90925      b
## 50 + AS 1000ppm  85.15550      b
A.AF.M3.DT
## $statistics
##    MSerror Df   Mean       CV
##   705.2817 12 131.14 20.25098
## 
## $parameters
##     test      name.t ntr alpha
##   Duncan Tratamiento   4  0.05
## 
## $duncan
##      Table CriticalRange
## 2 3.081307      40.91535
## 3 3.225244      42.82662
## 4 3.312453      43.98464
## 
## $means
##                        AF       std r       se     Min     Max      Q25
## 50 - AS         109.03425 22.838105 4 13.27857  75.192 125.306 106.8682
## 50 + AS 1000ppm  85.15550  9.616382 4 13.27857  76.353  95.340  77.2605
## 50 + AS 600ppm   93.90925 23.015248 4 13.27857  70.058 123.768  80.1155
## Control         236.46100 40.955725 4 13.27857 199.471 295.030 218.6778
##                      Q50      Q75
## 50 - AS         117.8195 119.9855
## 50 + AS 1000ppm  84.4645  92.3595
## 50 + AS 600ppm   90.9055 104.6993
## Control         225.6715 243.4547
## 
## $comparison
## NULL
## 
## $groups
##                        AF groups
## Control         236.46100      a
## 50 - AS         109.03425      b
## 50 + AS 600ppm   93.90925      b
## 50 + AS 1000ppm  85.15550      b
## 
## attr(,"class")
## [1] "group"

Análisis estadístico - Muestreo 4

# Datos - Área foliar - Muestreo 4

datos.AF.M4 <- data.frame(Var_M4$`Factor riego`, Var_M4$`Factor ácido ascórbico`, Var_M4$Tratamiento, Var_M4$`Área Foliar (cm2)`)
colnames(datos.AF.M4) <- c("F_riego", "F_AA", "Tratamiento", "AF")
datos.AF.M4
datos.AF.M4$F_riego <- as.factor(datos.AF.M4$F_riego)
datos.AF.M4$F_AA <- as.factor(datos.AF.M4$F_AA)
str(datos.AF.M4)
## 'data.frame':    16 obs. of  4 variables:
##  $ F_riego    : Factor w/ 2 levels "0.5","1": 2 2 2 2 1 1 1 1 1 1 ...
##  $ F_AA       : Factor w/ 3 levels "0 ppm","1000 ppm",..: 1 1 1 1 1 1 1 1 3 3 ...
##  $ Tratamiento: chr  "Control" "Control" "Control" "Control" ...
##  $ AF         : num  274.1 214.2 249.2 171.5 81.8 ...
# Anova - Área foliar - Muestreo 4
A.AF.M4 <- aov(AF ~ F_riego*F_AA, data = datos.AF.M4)
summary(A.AF.M4)
##             Df Sum Sq Mean Sq F value   Pr(>F)    
## F_riego      1  54586   54586  84.321 8.93e-07 ***
## F_AA         2    670     335   0.518    0.609    
## Residuals   12   7768     647                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
  • Tanto las concentraciones de ácido ascórbico como los dos tipos de riego, como factores independientes, tuvieron diferencias entre si con una significancia del 99.9%.
# Prueba de normalidad de residuos
shapiro.test(A.AF.M4$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  A.AF.M4$residuals
## W = 0.94759, p-value = 0.4525
  • El hecho de que no sea significativo (p-value > 0.05), representa que los datos tienen una distribución normal.
TukeyHSD(A.AF.M4)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = AF ~ F_riego * F_AA, data = datos.AF.M4)
## 
## $F_riego
##           diff      lwr     upr p adj
## 1-0.5 134.8899 102.8839 166.896 9e-07
## 
## $F_AA
##                       diff       lwr      upr     p adj
## 1000 ppm-0 ppm    2.868458 -38.69887 44.43578 0.9815169
## 600 ppm-0 ppm    13.954708 -27.61262 55.52203 0.6531372
## 600 ppm-1000 ppm 11.086250 -36.91156 59.08406 0.8141630
  • Los dos tipos de riego presenta diferencias significativas.
# Anova - AF - Muestreo 4 - Comparación entre los tratamientos

A.AF.M4.CT <- aov(AF ~ Tratamiento, data=datos.AF.M4)
summary(A.AF.M4.CT)
##             Df Sum Sq Mean Sq F value   Pr(>F)    
## Tratamiento  3  55256   18419   28.45 9.73e-06 ***
## Residuals   12   7768     647                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Tukey_A.AF.M4.CT <- TukeyHSD(A.AF.M4.CT)
Tukey_A.AF.M4.CT
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = AF ~ Tratamiento, data = datos.AF.M4)
## 
## $Tratamiento
##                                     diff       lwr       upr     p adj
## 50 + AS 1000ppm-50 - AS          7.07425 -46.33956  60.48806 0.9784302
## 50 + AS 600ppm-50 - AS          18.16050 -35.25331  71.57431 0.7471537
## Control-50 - AS                143.30150  89.88769 196.71531 0.0000204
## 50 + AS 600ppm-50 + AS 1000ppm  11.08625 -42.32756  64.50006 0.9249392
## Control-50 + AS 1000ppm        136.22725  82.81344 189.64106 0.0000339
## Control-50 + AS 600ppm         125.14100  71.72719 178.55481 0.0000782
  • Podemos observar que todos los tratamientos tienen diferencias signifciativas con respecto a su control.
A.AF.M4.DT <- duncan.test(A.AF.M4.CT, 'Tratamiento', console = T)
## 
## Study: A.AF.M4.CT ~ "Tratamiento"
## 
## Duncan's new multiple range test
## for AF 
## 
## Mean Square Error:  647.3597 
## 
## Tratamiento,  means
## 
##                        AF      std r       se     Min     Max       Q25
## 50 - AS          83.98825 12.25592 4 12.72163  67.704  95.400  78.25275
## 50 + AS 1000ppm  91.06250 16.18752 4 12.72163  75.722 113.441  81.92525
## 50 + AS 600ppm  102.14875 13.86812 4 12.72163  89.279 118.999  91.64150
## Control         227.28975 44.55189 4 12.72163 171.548 274.145 203.56100
##                      Q50       Q75
## 50 - AS          86.4245  92.16000
## 50 + AS 1000ppm  87.5435  96.68075
## 50 + AS 600ppm  100.1585 110.66575
## Control         231.7330 255.46175
## 
## Alpha: 0.05 ; DF Error: 12 
## 
## Critical Range
##        2        3        4 
## 39.19925 41.03036 42.13981 
## 
## Means with the same letter are not significantly different.
## 
##                        AF groups
## Control         227.28975      a
## 50 + AS 600ppm  102.14875      b
## 50 + AS 1000ppm  91.06250      b
## 50 - AS          83.98825      b
A.AF.M4.DT
## $statistics
##    MSerror Df     Mean       CV
##   647.3597 12 126.1223 20.17348
## 
## $parameters
##     test      name.t ntr alpha
##   Duncan Tratamiento   4  0.05
## 
## $duncan
##      Table CriticalRange
## 2 3.081307      39.19925
## 3 3.225244      41.03036
## 4 3.312453      42.13981
## 
## $means
##                        AF      std r       se     Min     Max       Q25
## 50 - AS          83.98825 12.25592 4 12.72163  67.704  95.400  78.25275
## 50 + AS 1000ppm  91.06250 16.18752 4 12.72163  75.722 113.441  81.92525
## 50 + AS 600ppm  102.14875 13.86812 4 12.72163  89.279 118.999  91.64150
## Control         227.28975 44.55189 4 12.72163 171.548 274.145 203.56100
##                      Q50       Q75
## 50 - AS          86.4245  92.16000
## 50 + AS 1000ppm  87.5435  96.68075
## 50 + AS 600ppm  100.1585 110.66575
## Control         231.7330 255.46175
## 
## $comparison
## NULL
## 
## $groups
##                        AF groups
## Control         227.28975      a
## 50 + AS 600ppm  102.14875      b
## 50 + AS 1000ppm  91.06250      b
## 50 - AS          83.98825      b
## 
## attr(,"class")
## [1] "group"

Análisis descriptivo - Área foliar

# Datos - Gráfico - Área foliar

Datos.G.AF <- data.frame(factor(Tratamientos, ordered = TRUE, levels = c("Control", "50 - AS", "50 + AS 600ppm", "50 + AS 1000ppm")), Var_M1$`Área Foliar (cm2)`, Var_M2$`Área Foliar (cm2)`,Var_M3$`Área Foliar (cm2)`, Var_M4$`Área Foliar (cm2)`)
colnames(Datos.G.AF) <- c("Tratamientos", "31", "38","45", "52")
Datos.G.AF
# Unificar la variable respuesta en una sola columna
df.long.AF = gather(Datos.G.AF, dds, AF, 2:5)
df.long.AF
# Diferencias significativas con el control
#          M1  M2  M3  M4
DS.AF <- c("a", "a", "a", "a",  #T1
           "b*", "b*", "b*", "b*", #T2
           "b*", "b*", "b*", "b*",  #T3
           "b*", "b*", "b*", "b*") #T4

# Media y desviación estandar de la media de los tratamientos en los diferentes muestreos.
df.sumzd.AF = group_by(df.long.AF, Tratamientos, dds, ) %>% summarise(mean = mean(AF), sd = sd(AF))
## `summarise()` has grouped output by 'Tratamientos'. You can override using the
## `.groups` argument.
# Con diferencias significativas de los tratamientos con su control
df.sumzd.AF.ds <- data.frame(df.sumzd.AF, DS.AF)
df.sumzd.AF.ds
G.AF = ggplot(df.sumzd.AF, aes(x=dds, y=mean, fill=Tratamientos))+
  geom_bar(stat = "identity", position = "dodge", color = "black", alpha = 0.5)+
  geom_errorbar(aes(ymin=mean-sd, ymax=mean+sd), width = 0.25, size=0.5, position = position_dodge(0.9), alpha = 0.5)+
  scale_fill_manual(values=c("red", "yellow", "blue", "green")) +
  theme_minimal()+
  ggtitle("Área foliar promedio \nen los diferentes muestreos") + theme(plot.title = element_text(family = "Times New Roman",
size = rel(1.5),
vjust = 0.5, 
hjust = 0.5))+
  labs(x = "Días después de siembra", y = "cm2")+
  theme(axis.title.x = element_text(family = "Times New Roman"), axis.title.y = element_text(family = "Times New Roman"))+
  theme(legend.title = element_text(family = "Times New Roman"))+
  geom_text(aes(x=dds, y= mean+55, label=DS.AF),
            position = position_dodge(width = 1), size = 5)
G.AF

Pérdida de electrolitos

Análisis estadístico - Muestreo 3

# Datos - Tasa absoluta de crecimiento - Muestreo 1

datos.PE.2.M3 <- data.frame(PE_M3$`Factor riego`, PE_M3$`Factor ácido ascórbico`, PE_M3$Tratamiento, PE_M3$`Pérdida de electrolitos`)
colnames(datos.PE.2.M3) <- c("F_riego", "F_AA", "Tratamiento", "PE2")
datos.PE.2.M3
datos.PE.2.M3$F_riego <- as.factor(datos.PE.2.M3$F_riego)
datos.PE.2.M3$F_AA <- as.factor(datos.PE.2.M3$F_AA)
str(datos.PE.2.M3)
## 'data.frame':    16 obs. of  4 variables:
##  $ F_riego    : Factor w/ 2 levels "0.5","1": 2 2 2 2 1 1 1 1 1 1 ...
##  $ F_AA       : Factor w/ 3 levels "0 ppm","1000 ppm",..: 1 1 1 1 1 1 1 1 3 3 ...
##  $ Tratamiento: chr  "Control" "Control" "Control" "Control" ...
##  $ PE2        : num  13.6 13.6 13.6 13.6 25.6 ...
# Anova - PE - Muestreo 3
A.PE.2.M3 <- aov(PE2 ~ F_riego*F_AA, data = datos.PE.2.M3)
summary(A.PE.2.M3)
##             Df Sum Sq Mean Sq   F value Pr(>F)    
## F_riego      1  214.7  214.71 1.582e+31 <2e-16 ***
## F_AA         2  116.6   58.28 4.293e+30 <2e-16 ***
## Residuals   12    0.0    0.00                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
  • Tanto las concentraciones de ácido ascórbico como los dos tipos de riego, como factores independientes, tuvieron diferencias entre si con una significancia del 99.9%.
# Prueba de normalidad de residuos
shapiro.test(A.PE.2.M3$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  A.PE.2.M3$residuals
## W = 0.58726, p-value = 1.23e-05
  • Los datos tienen una distribución normal.
TukeyHSD(A.PE.2.M3)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = PE2 ~ F_riego * F_AA, data = datos.PE.2.M3)
## 
## $F_riego
##            diff       lwr       upr p adj
## 1-0.5 -8.459899 -8.459899 -8.459899     0
## 
## $F_AA
##                       diff       lwr       upr p adj
## 1000 ppm-0 ppm   -5.816071 -5.816071 -5.816071     0
## 600 ppm-0 ppm    -1.239844 -1.239844 -1.239844     0
## 600 ppm-1000 ppm  4.576226  4.576226  4.576226     0
  • Las concentraciones de ácido áscórbico y los dos tipos de riego presenta diferencias significativas.
# Anova - PE2 - Muestreo 3 - Comparación entre los tratamientos

A.PE.2.M3.CT <- aov(PE2 ~ Tratamiento, data=datos.PE.2.M3)
summary(A.PE.2.M3.CT)
##             Df Sum Sq Mean Sq   F value Pr(>F)    
## Tratamiento  3  331.3   110.4 4.561e+30 <2e-16 ***
## Residuals   12    0.0     0.0                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Tukey_A.PE.2.M3.CT <- TukeyHSD(A.PE.2.M3.CT)
Tukey_A.PE.2.M3.CT
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = PE2 ~ Tratamiento, data = datos.PE.2.M3)
## 
## $Tratamiento
##                                      diff        lwr        upr p adj
## 50 + AS 1000ppm-50 - AS         -7.580049  -7.580049  -7.580049     0
## 50 + AS 600ppm-50 - AS          -3.003823  -3.003823  -3.003823     0
## Control-50 - AS                -11.987857 -11.987857 -11.987857     0
## 50 + AS 600ppm-50 + AS 1000ppm   4.576226   4.576226   4.576226     0
## Control-50 + AS 1000ppm         -4.407807  -4.407807  -4.407807     0
## Control-50 + AS 600ppm          -8.984033  -8.984033  -8.984033     0
  • Podemos observar que todos los tratamientos tienen diferencias signifciativas con respecto a su control.
A.PE.2.M3.DT <- duncan.test(A.PE.2.M3.CT, 'Tratamiento', console = T)
## 
## Study: A.PE.2.M3.CT ~ "Tratamiento"
## 
## Duncan's new multiple range test
## for PE2 
## 
## Mean Square Error:  2.421029e-29 
## 
## Tratamiento,  means
## 
##                      PE2 std r           se      Min      Max      Q25      Q50
## 50 - AS         25.61576   0 4 2.460198e-15 25.61576 25.61576 25.61576 25.61576
## 50 + AS 1000ppm 18.03571   0 4 2.460198e-15 18.03571 18.03571 18.03571 18.03571
## 50 + AS 600ppm  22.61194   0 4 2.460198e-15 22.61194 22.61194 22.61194 22.61194
## Control         13.62791   0 4 2.460198e-15 13.62791 13.62791 13.62791 13.62791
##                      Q75
## 50 - AS         25.61576
## 50 + AS 1000ppm 18.03571
## 50 + AS 600ppm  22.61194
## Control         13.62791
## 
## Alpha: 0.05 ; DF Error: 12 
## 
## Critical Range
##            2            3            4 
## 7.580623e-15 7.934736e-15 8.149289e-15 
## 
## Means with the same letter are not significantly different.
## 
##                      PE2 groups
## 50 - AS         25.61576      a
## 50 + AS 600ppm  22.61194      b
## 50 + AS 1000ppm 18.03571      c
## Control         13.62791      d
A.PE.2.M3.DT
## $statistics
##        MSerror Df     Mean           CV
##   2.421029e-29 12 19.97283 2.463544e-14
## 
## $parameters
##     test      name.t ntr alpha
##   Duncan Tratamiento   4  0.05
## 
## $duncan
##      Table CriticalRange
## 2 3.081307  7.580623e-15
## 3 3.225244  7.934736e-15
## 4 3.312453  8.149289e-15
## 
## $means
##                      PE2 std r           se      Min      Max      Q25      Q50
## 50 - AS         25.61576   0 4 2.460198e-15 25.61576 25.61576 25.61576 25.61576
## 50 + AS 1000ppm 18.03571   0 4 2.460198e-15 18.03571 18.03571 18.03571 18.03571
## 50 + AS 600ppm  22.61194   0 4 2.460198e-15 22.61194 22.61194 22.61194 22.61194
## Control         13.62791   0 4 2.460198e-15 13.62791 13.62791 13.62791 13.62791
##                      Q75
## 50 - AS         25.61576
## 50 + AS 1000ppm 18.03571
## 50 + AS 600ppm  22.61194
## Control         13.62791
## 
## $comparison
## NULL
## 
## $groups
##                      PE2 groups
## 50 - AS         25.61576      a
## 50 + AS 600ppm  22.61194      b
## 50 + AS 1000ppm 18.03571      c
## Control         13.62791      d
## 
## attr(,"class")
## [1] "group"

Análisis descriptivo de Perdida de electrolitos

# Datos - Gráfico - PE2

Tratamientos_3 <- c(
  rep("Control", 4),
  rep("50 - AS", 4),
  rep("50 + AS 600ppm", 4),
  rep("50 + AS 1000ppm", 4)
)

Datos.G.PE.2.M3 <- data.frame(factor(Tratamientos_3, ordered = TRUE, levels = c("Control", "50 - AS", "50 + AS 600ppm", "50 + AS 1000ppm")), PE_M3$`Pérdida de electrolitos`)
colnames(Datos.G.PE.2.M3) <- c("Tratamientos", "45")
Datos.G.PE.2.M3
# Unificar la variable respuesta en una sola columna
df.long.PE.2 = gather(Datos.G.PE.2.M3, dds, PE2, 2:2)
df.long.PE.2
# Diferencias significativas con el control
#          M1  M2  M3  M4
DS.PE.2 <- c("d", "a*", "b*", "c*") #T4

# Media y desviación estandar de la media de los tratamientos en los diferentes muestreos.
df.sumzd.PE.2 = group_by(df.long.PE.2, Tratamientos, dds, ) %>% summarise(mean = mean(PE2), sd = sd(PE2))
## `summarise()` has grouped output by 'Tratamientos'. You can override using the
## `.groups` argument.
# Con diferencias significativas de los tratamientos con su control
df.sumzd.PE2.ds <- data.frame(df.sumzd.PE.2, DS.PE.2)
df.sumzd.PE2.ds
G.PE2 = ggplot(df.sumzd.PE.2, aes(x=dds, y=mean, fill=Tratamientos, xmax = 4.7))+
  geom_bar(stat = "identity", position = "dodge", color = "black", alpha = 0.5)+
  geom_errorbar(aes(ymin=mean-sd, ymax=mean+sd), width = 0.25, size=0.5, position = position_dodge(0.9), alpha = 0.5)+
  scale_fill_manual(values=c("red", "yellow", "blue", "green")) +
  theme_minimal()+
  theme(axis.text.x = element_text(size = 15),
        axis.text.y = element_text(size = 15))+
  ggtitle("Pérdida de electrolitos \nen los diferentes muestreos") + theme(plot.title = element_text(family = "Times New Roman",
size = rel(2),
vjust = 0.5, 
hjust = 0.5))+
  labs(x = "Días después de siembra", y = "% Pérdida de electrolitos")+
  theme(axis.title.x = element_text(family = "Times New Roman", size = rel(1.5)), axis.title.y = element_text(family = "Times New Roman", size = rel(1.5)))+
  theme(legend.title = element_text(family = "Times New Roman", size = rel(1.5)))+
  geom_text(aes(x=dds, y= mean+2, label=DS.PE.2),
            position = position_dodge(width = 1), size = 8)
G.PE2

Relación área foliar y área bajo el dosel

Índice de área foliar - Muestreo 1

# Datos - Índice de área foliar - Valor instantáneo - Muestreo 1

datos.RAA.M1 <- data.frame(Var_M1$`Factor riego`, Var_M1$`Factor ácido ascórbico`, Var_M1$Tratamiento, Var_M1$`Indice de área foliar (Relación)`)
colnames(datos.RAA.M1) <- c("F_riego", "F_AA", "Tratamiento", "RAA")
datos.RAA.M1
datos.RAA.M1$F_riego <- as.factor(datos.RAA.M1$F_riego)
datos.RAA.M1$F_AA <- as.factor(datos.RAA.M1$F_AA)
str(datos.RAA.M1)
## 'data.frame':    16 obs. of  4 variables:
##  $ F_riego    : Factor w/ 2 levels "0.5","1": 2 2 2 2 1 1 1 1 1 1 ...
##  $ F_AA       : Factor w/ 3 levels "0 ppm","1000 ppm",..: 1 1 1 1 1 1 1 1 3 3 ...
##  $ Tratamiento: chr  "Control" "Control" "Control" "Control" ...
##  $ RAA        : num  0.968 0.652 0.839 1.146 1.61 ...
# Anova - Índice de área foliar - Valor instantáneo - Muestreo 1
A.RAA.M1 <- aov(RAA ~ F_riego*F_AA, data = datos.RAA.M1)
summary(A.RAA.M1)
##             Df Sum Sq Mean Sq F value Pr(>F)  
## F_riego      1 0.2906 0.29063   3.362 0.0916 .
## F_AA         2 0.1493 0.07465   0.863 0.4463  
## Residuals   12 1.0374 0.08645                 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
  • Los dos tipos de riego como factor independiente, tiene diferencias entre si, con una significancia del 90%.
# Prueba de normalidad de residuos
shapiro.test(A.RAA.M1$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  A.RAA.M1$residuals
## W = 0.97518, p-value = 0.9139
  • El hecho de que no sea significativo (p-value > 0.05), representa que los datos tienen una distribución normal.
TukeyHSD(A.RAA.M1)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = RAA ~ F_riego * F_AA, data = datos.RAA.M1)
## 
## $F_riego
##             diff        lwr        upr     p adj
## 1-0.5 -0.3112498 -0.6811069 0.05860733 0.0916275
## 
## $F_AA
##                         diff        lwr       upr     p adj
## 1000 ppm-0 ppm   -0.20461826 -0.6849640 0.2757275 0.5111439
## 600 ppm-0 ppm    -0.06973048 -0.5500762 0.4106152 0.9211799
## 600 ppm-1000 ppm  0.13488778 -0.4197677 0.6895432 0.7965370
  • Ninguno de los factores tienen diferencias significativas.
# Anova - Índice de área foliar - Valor instantáneo - Muestreo 1 - Comparación entre los tratamientos

A.RAA.M1.CT <- aov(RAA ~ Tratamiento, data=datos.RAA.M1)
summary(A.RAA.M1.CT)
##             Df Sum Sq Mean Sq F value Pr(>F)
## Tratamiento  3 0.4399 0.14664   1.696  0.221
## Residuals   12 1.0374 0.08645
Tukey_A.RAA.M1.CT <- TukeyHSD(A.RAA.M1.CT)
Tukey_A.RAA.M1.CT
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = RAA ~ Tratamiento, data = datos.RAA.M1)
## 
## $Tratamiento
##                                      diff        lwr       upr     p adj
## 50 + AS 1000ppm-50 - AS        -0.2732054 -0.8904474 0.3440365 0.5718689
## 50 + AS 600ppm-50 - AS         -0.1383177 -0.7555596 0.4789242 0.9080910
## Control-50 - AS                -0.4484241 -1.0656660 0.1688178 0.1906430
## 50 + AS 600ppm-50 + AS 1000ppm  0.1348878 -0.4823541 0.7521297 0.9139524
## Control-50 + AS 1000ppm        -0.1752187 -0.7924606 0.4420232 0.8332379
## Control-50 + AS 600ppm         -0.3101065 -0.9273484 0.3071354 0.4717307
  • Podemos observar que ninguno de los tratamientos tiene diferencias significativas con el control para el muestreo 1.

Índice de área foliar - Muestreo 2

# Datos - Índice de área foliar - Valor instantáneo - Muestreo 2

datos.RAA.M2 <- data.frame(Var_M2$`Factor riego`, Var_M2$`Factor ácido ascórbico`, Var_M2$Tratamiento, Var_M2$`Indice de área foliar (Relación)`)
colnames(datos.RAA.M2) <- c("F_riego", "F_AA", "Tratamiento", "RAA")
datos.RAA.M2
datos.RAA.M2$F_riego <- as.factor(datos.RAA.M2$F_riego)
datos.RAA.M2$F_AA <- as.factor(datos.RAA.M2$F_AA)
str(datos.RAA.M2)
## 'data.frame':    16 obs. of  4 variables:
##  $ F_riego    : Factor w/ 2 levels "0.5","1": 2 2 2 2 1 1 1 1 1 1 ...
##  $ F_AA       : Factor w/ 3 levels "0 ppm","1000 ppm",..: 1 1 1 1 1 1 1 1 3 3 ...
##  $ Tratamiento: chr  "Control" "Control" "Control" "Control" ...
##  $ RAA        : num  0.904 1.014 0.814 1.094 0.94 ...
# Anova - Índice de área foliar - Valor instantáneo - Muestreo 2
A.RAA.M2 <- aov(RAA ~ F_riego*F_AA, data = datos.RAA.M2)
summary(A.RAA.M2)
##             Df  Sum Sq Mean Sq F value Pr(>F)  
## F_riego      1 0.07602 0.07602   4.945 0.0461 *
## F_AA         2 0.07500 0.03750   2.439 0.1292  
## Residuals   12 0.18449 0.01537                 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
  • Los dos tipos de riego, como factores independientes, tienen diferencias significativas.
# Prueba de normalidad de residuos
shapiro.test(A.RAA.M2$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  A.RAA.M2$residuals
## W = 0.96058, p-value = 0.6723
  • El hecho de que no sea significativo (p-value > 0.05), representa que los datos tienen una organización normal.
TukeyHSD(A.RAA.M2)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = RAA ~ F_riego * F_AA, data = datos.RAA.M2)
## 
## $F_riego
##            diff         lwr       upr     p adj
## 1-0.5 0.1591884 0.003213213 0.3151636 0.0461307
## 
## $F_AA
##                         diff         lwr        upr     p adj
## 1000 ppm-0 ppm   -0.13061786 -0.33318804 0.07195233 0.2378586
## 600 ppm-0 ppm     0.05000436 -0.15256583 0.25257454 0.7911749
## 600 ppm-1000 ppm  0.18062222 -0.05328569 0.41453012 0.1403437
  • Solo los riegos presentan diferencias significativas entre si.
# Anova - Índice de área foliar - Valor instantáneo - Muestreo 1 - Comparación entre los tratamientos

A.RAA.M2.CT <- aov(RAA ~ Tratamiento, data=datos.RAA.M2)
summary(A.RAA.M2.CT)
##             Df Sum Sq Mean Sq F value Pr(>F)  
## Tratamiento  3 0.1510 0.05034   3.274 0.0588 .
## Residuals   12 0.1845 0.01537                 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Tukey_A.RAA.M2.CT <- TukeyHSD(A.RAA.M2.CT)
Tukey_A.RAA.M2.CT
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = RAA ~ Tratamiento, data = datos.RAA.M2)
## 
## $Tratamiento
##                                       diff          lwr       upr     p adj
## 50 + AS 1000ppm-50 - AS        -0.15077123 -0.411072926 0.1095305 0.3560266
## 50 + AS 600ppm-50 - AS          0.02985098 -0.230450711 0.2901527 0.9857471
## Control-50 - AS                 0.11888166 -0.141420030 0.3791834 0.5477590
## 50 + AS 600ppm-50 + AS 1000ppm  0.18062222 -0.079679479 0.4409239 0.2206680
## Control-50 + AS 1000ppm         0.26965290  0.009351201 0.5299546 0.0415677
## Control-50 + AS 600ppm          0.08903068 -0.171271014 0.3493324 0.7438303
  • Podemos observar que ninguno de los tratamientos tiene diferencias significativas con el control para el muestreo 2.

Índice de área foliar - Muestreo 3

# Datos - Índice de área foliar - Valor instantáneo - Muestreo 3

datos.RAA.M3 <- data.frame(Var_M3$`Factor riego`, Var_M3$`Factor ácido ascórbico`, Var_M3$Tratamiento,Var_M3$`Indice de área foliar (Relación)`)
colnames(datos.RAA.M3) <- c("F_riego", "F_AA", "Tratamiento", "RAA")
datos.RAA.M3
datos.RAA.M3$F_riego <- as.factor(datos.RAA.M3$F_riego)
datos.RAA.M3$F_AA <- as.factor(datos.RAA.M3$F_AA)
str(datos.RAA.M3)
## 'data.frame':    16 obs. of  4 variables:
##  $ F_riego    : Factor w/ 2 levels "0.5","1": 2 2 2 2 1 1 1 1 1 1 ...
##  $ F_AA       : Factor w/ 3 levels "0 ppm","1000 ppm",..: 1 1 1 1 1 1 1 1 3 3 ...
##  $ Tratamiento: chr  "Control" "Control" "Control" "Control" ...
##  $ RAA        : num  0.926 1.454 0.965 0.947 2.565 ...
# Anova - Índice de área foliar - Valor instantáneo - Muestreo 3
A.RAA.M3 <- aov(RAA ~ F_riego*F_AA, data = datos.RAA.M3)
summary(A.RAA.M3)
##             Df Sum Sq Mean Sq F value  Pr(>F)   
## F_riego      1  9.017   9.017  16.754 0.00149 **
## F_AA         2  0.717   0.358   0.666 0.53188   
## Residuals   12  6.459   0.538                   
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
  • Los dos tipos de riego, como factores independientes, tienen diferencias con una significancia del 95%.
# Prueba de normalidad de residuos
shapiro.test(A.RAA.M3$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  A.RAA.M3$residuals
## W = 0.91672, p-value = 0.1493
  • El hecho de que no sea significativo (p-value > 0.05), representa que los datos tienen una organización normal.
TukeyHSD(A.RAA.M3)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = RAA ~ F_riego * F_AA, data = datos.RAA.M3)
## 
## $F_riego
##            diff       lwr        upr     p adj
## 1-0.5 -1.733695 -2.656553 -0.8108368 0.0014905
## 
## $F_AA
##                        diff        lwr      upr     p adj
## 1000 ppm-0 ppm   -0.3205264 -1.5190728 0.878020 0.7603629
## 600 ppm-0 ppm     0.2768678 -0.9216785 1.475414 0.8141218
## 600 ppm-1000 ppm  0.5973942 -0.7865679 1.981356 0.5025482
  • Solo los riegos tienen diferencias significativas.
# Anova - Temperatura de la hoja - Muestreo 3 - Comparación entre los tratamientos

A.RAA.M3.CT <- aov(RAA ~ Tratamiento, data=datos.RAA.M3)
summary(A.RAA.M3.CT)
##             Df Sum Sq Mean Sq F value  Pr(>F)   
## Tratamiento  3  9.734   3.245   6.028 0.00957 **
## Residuals   12  6.459   0.538                   
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Tukey_A.RAA.M3.CT <- TukeyHSD(A.RAA.M3.CT)
Tukey_A.RAA.M3.CT
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = RAA ~ Tratamiento, data = datos.RAA.M3)
## 
## $Tratamiento
##                                      diff       lwr        upr     p adj
## 50 + AS 1000ppm-50 - AS        -0.3314410 -1.871567  1.2086852 0.9173678
## 50 + AS 600ppm-50 - AS          0.2659532 -1.274173  1.8060794 0.9544731
## Control-50 - AS                -1.7555241 -3.295650 -0.2153978 0.0242533
## 50 + AS 600ppm-50 + AS 1000ppm  0.5973942 -0.942732  2.1375205 0.6664979
## Control-50 + AS 1000ppm        -1.4240830 -2.964209  0.1160432 0.0733284
## Control-50 + AS 600ppm         -2.0214773 -3.561603 -0.4813510 0.0098863
  • Podemos observar solo los tratamientos amarillo y azul, tienen diferencias significativas con respecto al control.

Índice de área foliar - Muestreo 4

# Datos - Índice de área foliar - Valor instantáneo - Muestreo 4

datos.RAA.M4 <- data.frame(Var_M4$`Factor riego`, Var_M4$`Factor ácido ascórbico`, Var_M4$Tratamiento, Var_M4$`Indice de área foliar (Relación)`)
colnames(datos.RAA.M4) <- c("F_riego", "F_AA", "Tratamiento", "RAA")
datos.RAA.M4
datos.RAA.M4$F_riego <- as.factor(datos.RAA.M4$F_riego)
datos.RAA.M4$F_AA <- as.factor(datos.RAA.M4$F_AA)
str(datos.RAA.M4)
## 'data.frame':    16 obs. of  4 variables:
##  $ F_riego    : Factor w/ 2 levels "0.5","1": 2 2 2 2 1 1 1 1 1 1 ...
##  $ F_AA       : Factor w/ 3 levels "0 ppm","1000 ppm",..: 1 1 1 1 1 1 1 1 3 3 ...
##  $ Tratamiento: chr  "Control" "Control" "Control" "Control" ...
##  $ RAA        : num  1.518 0.749 0.739 0.633 1.304 ...
# Anova - Índice de área foliar - Valor instantáneo - Muestreo 4
A.RAA.M4 <- aov(RAA ~ F_riego*F_AA, data = datos.RAA.M4)
summary(A.RAA.M4)
##             Df Sum Sq Mean Sq F value Pr(>F)  
## F_riego      1  1.661   1.661   6.891 0.0222 *
## F_AA         2  1.588   0.794   3.294 0.0724 .
## Residuals   12  2.892   0.241                 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
  • Los dos tipos de riego, como factores independientes, tiene una diferencia significativa del 95%. Los tres tipos de concetraciones de ácido ascórbico, como factor independiente, presenta diferencias significativas del 90%.
# Prueba de normalidad de residuos
shapiro.test(A.RAA.M4$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  A.RAA.M4$residuals
## W = 0.95502, p-value = 0.5732
  • El hecho de que no sea significativo (p-value > 0.05), representa que los datos tienen una organización normal.
TukeyHSD(A.RAA.M4)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = RAA ~ F_riego * F_AA, data = datos.RAA.M4)
## 
## $F_riego
##             diff       lwr        upr     p adj
## 1-0.5 -0.7440306 -1.361597 -0.1264646 0.0221799
## 
## $F_AA
##                        diff        lwr       upr     p adj
## 1000 ppm-0 ppm   -0.5835355 -1.3855890 0.2185180 0.1697387
## 600 ppm-0 ppm    -0.4299584 -1.2320119 0.3720951 0.3572084
## 600 ppm-1000 ppm  0.1535772 -0.7725544 1.0797088 0.8986181
  • Solo los riegos presentan diferencias significativas.
# Anova - Temperatura de la hoja - Muestreo 4 - Comparación entre los tratamientos

A.RAA.M4.CT <- aov(RAA ~ Tratamiento, data=datos.RAA.M4)
summary(A.RAA.M4.CT)
##             Df Sum Sq Mean Sq F value Pr(>F)  
## Tratamiento  3  3.249   1.083   4.493 0.0247 *
## Residuals   12  2.892   0.241                 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Tukey_A.RAA.M4.CT <- TukeyHSD(A.RAA.M4.CT)
Tukey_A.RAA.M4.CT
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = RAA ~ Tratamiento, data = datos.RAA.M4)
## 
## $Tratamiento
##                                      diff        lwr        upr     p adj
## 50 + AS 1000ppm-50 - AS        -0.8369090 -1.8675438  0.1937258 0.1277319
## 50 + AS 600ppm-50 - AS         -0.6833318 -1.7139667  0.3473030 0.2524823
## Control-50 - AS                -1.2507775 -2.2814124 -0.2201427 0.0165230
## 50 + AS 600ppm-50 + AS 1000ppm  0.1535772 -0.8770576  1.1842120 0.9698481
## Control-50 + AS 1000ppm        -0.4138685 -1.4445034  0.6167663 0.6428806
## Control-50 + AS 600ppm         -0.5674457 -1.5980805  0.4631891 0.3970450
  • Podemos observar que solo el tratamiento amarillo tuvo diferencias significativas con respecto al control.

Análisis descriptivo - Índice de área foliar - Valor instantáneo

# Datos - Gráfico - Índice de área foliar - Valor instantáneo

Datos.G.RAA <- data.frame(factor(Tratamientos, ordered = TRUE, levels = c("Control", "50 - AS", "50 + AS 600ppm", "50 + AS 1000ppm")), Var_M1$`Indice de área foliar (Relación)`, Var_M2$`Indice de área foliar (Relación)`, Var_M3$`Indice de área foliar (Relación)`, Var_M4$`Indice de área foliar (Relación)`)
colnames(Datos.G.RAA) <- c("Tratamientos", "31", "38","45", "52")
Datos.G.RAA
# Unificar la variable respuesta en una sola columna
df.long.RAA = gather(Datos.G.RAA, dds, RAA, 2:5)
df.long.RAA
# Media y desviación estandar de la media de los tratamientos en los diferentes muestreos.
df.sumzd.RAA = group_by(df.long.RAA, Tratamientos, dds, ) %>% summarise(mean = mean(RAA), sd = sd(RAA))
## `summarise()` has grouped output by 'Tratamientos'. You can override using the
## `.groups` argument.
# Con diferencias significativas de los tratamientos con su control
df.sumzd.RAA.ds <- data.frame(df.sumzd.RAA)
df.sumzd.RAA.ds
G.RAA <- ggplot(df.sumzd.RAA, aes(x = dds, y = mean, group = Tratamientos, colour = Tratamientos)) +
  scale_colour_manual(values=c("red", "#EFA30C", "blue", "green"))+
  geom_line() +
  geom_point( size=2, shape = 21, fill="white") +
  theme_test()+
  ggtitle("Indice de área foliar \nen los diferentes muestreos")+ theme(plot.title = element_text(family = "Times New Roman",
size = rel(2),
vjust = 0.5, 
hjust = 0.5))+
   theme(axis.text.x = element_text(size=15),
        axis.text.y = element_text(size=15))+
  labs(x = "Días después de siembra", y = "Indice")+
  theme(axis.title.x = element_text(family = "Times New Roman", size = rel(1.5)), axis.title.y = element_text(family = "Times New Roman", size=rel(1.5)))+
  theme(legend.title = element_text(family = "Times New Roman"))

G.RAA

# Para colocar una imágen: "![](/cloud/project/Estomas abiertos y cerrados.PNG)"

Estomas abiertos y cerrados

  • Realizado en Excel.

Escala de BBCH

Anexos

Ecuaciones de variables indirectas

Afiche