#Trabajo Practico N 1 Modulo 5. #Estadistica Parametrica y Noparametrica ##Cultivo de Soja

##Situación 1. ###1. Utilizando la información de la muestra, calcule el intervalo que estime con un 95% de confianza que genotipos de soja tienen una mayor cantidad promedio de vainas en sus plantas. ###2. Ahora, calcule el intervalo que estime que genotipos de soja tienen una mayor cantidad promedio de semillas por vaina en sus plantas. ###3. ¿Cuál genotipo nos dará en promedio un mayor número de semillas por planta?

Instalar y cargar los paquetes necesarios

install.packages("readxl")
## Installing package into '/cloud/lib/x86_64-pc-linux-gnu-library/4.5'
## (as 'lib' is unspecified)
install.packages("tidyverse")
## Installing package into '/cloud/lib/x86_64-pc-linux-gnu-library/4.5'
## (as 'lib' is unspecified)
install.packages("summarytools")
## Installing package into '/cloud/lib/x86_64-pc-linux-gnu-library/4.5'
## (as 'lib' is unspecified)
install.packages("dplyr")
## Installing package into '/cloud/lib/x86_64-pc-linux-gnu-library/4.5'
## (as 'lib' is unspecified)
library(readxl)
library(tidyverse)   
## ── Attaching core tidyverse packages ──────────────────────── tidyverse 2.0.0 ──
## ✔ dplyr     1.1.4     ✔ readr     2.1.5
## ✔ forcats   1.0.0     ✔ stringr   1.5.1
## ✔ ggplot2   3.5.2     ✔ tibble    3.3.0
## ✔ lubridate 1.9.4     ✔ tidyr     1.3.1
## ✔ purrr     1.1.0
## ── 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(summarytools) 
## Warning in fun(libname, pkgname): couldn't connect to display ":0"
## 
## Attaching package: 'summarytools'
## 
## The following object is masked from 'package:tibble':
## 
##     view
library(dplyr)

Carga de las bases de datos

Soja <- read_excel("SoybeanDataset.xlsx")

Ver las primeras filas

head(Soja)
## # A tibble: 6 × 15
##   Genotipo Estrés_Hidrico Acido_Salicilico Altura_de_la_planta Numero_de_Vainas
##   <chr>    <chr>          <chr>                          <dbl>            <dbl>
## 1 G1       ALTO           Control                          458              151
## 2 G1       ALTO           Dosis Baja                       513              136
## 3 G1       ALTO           Dosis Baja                       500              137
## 4 G1       ALTO           Dosis Alta                       568              150
## 5 G1       ALTO           Control                          474              151
## 6 G1       ALTO           Dosis Baja                       520              136
## # ℹ 10 more variables: Peso_biologico <dbl>, Azúcares <dbl>,
## #   Contenido_relativo_de_agua_en_hojas <dbl>, Clorofila_A663 <dbl>,
## #   Clorofila_B649 <dbl>, Porcentaje_de_proteina <dbl>,
## #   Peso_de_300_semillas <dbl>, Indice_de_área_foliar <dbl>,
## #   Numero_de_semillas_por_vaina <dbl>, Contenido_de_proteina <dbl>

Respuesta 1

# Filtrar por cada genotipo
Genotipoo_1 <- subset(Soja, Genotipo == "G1")
Genotipoo_2 <- subset(Soja, Genotipo == "G2")
Genotipoo_3 <- subset(Soja, Genotipo == "G3")
Genotipoo_4 <- subset(Soja, Genotipo == "G4")
Genotipoo_5 <- subset(Soja, Genotipo == "G5")
Genotipoo_6 <- subset(Soja, Genotipo == "G6")

# Ejecutar t.test para el Numero de vainas y guardar el resultado
Numero_de_vainas1 <- t.test(Genotipoo_1$Numero_de_Vainas, conf.level = 0.95)
Numero_de_vainas2 <- t.test(Genotipoo_2$Numero_de_Vainas, conf.level = 0.95)
Numero_de_vainas3 <- t.test(Genotipoo_3$Numero_de_Vainas, conf.level = 0.95)
Numero_de_vainas4 <- t.test(Genotipoo_4$Numero_de_Vainas, conf.level = 0.95)
Numero_de_vainas5 <- t.test(Genotipoo_5$Numero_de_Vainas, conf.level = 0.95)
Numero_de_vainas6 <- t.test(Genotipoo_6$Numero_de_Vainas, conf.level = 0.95)
# Mostrar todo el resultado
Numero_de_vainas1
## 
##  One Sample t-test
## 
## data:  Genotipoo_1$Numero_de_Vainas
## t = 612.96, df = 9240, p-value < 2.2e-16
## alternative hypothesis: true mean is not equal to 0
## 95 percent confidence interval:
##  141.4963 142.4042
## sample estimates:
## mean of x 
##  141.9502
Numero_de_vainas2
## 
##  One Sample t-test
## 
## data:  Genotipoo_2$Numero_de_Vainas
## t = 768.95, df = 9241, p-value < 2.2e-16
## alternative hypothesis: true mean is not equal to 0
## 95 percent confidence interval:
##  142.9178 143.6483
## sample estimates:
## mean of x 
##  143.2831
Numero_de_vainas3
## 
##  One Sample t-test
## 
## data:  Genotipoo_3$Numero_de_Vainas
## t = 677.41, df = 9241, p-value < 2.2e-16
## alternative hypothesis: true mean is not equal to 0
## 95 percent confidence interval:
##  146.4089 147.2587
## sample estimates:
## mean of x 
##  146.8338
Numero_de_vainas4
## 
##  One Sample t-test
## 
## data:  Genotipoo_4$Numero_de_Vainas
## t = 789.08, df = 9241, p-value < 2.2e-16
## alternative hypothesis: true mean is not equal to 0
## 95 percent confidence interval:
##  155.7210 156.4967
## sample estimates:
## mean of x 
##  156.1089
Numero_de_vainas5
## 
##  One Sample t-test
## 
## data:  Genotipoo_5$Numero_de_Vainas
## t = 1192.1, df = 9241, p-value < 2.2e-16
## alternative hypothesis: true mean is not equal to 0
## 95 percent confidence interval:
##  138.9409 139.3986
## sample estimates:
## mean of x 
##  139.1698
Numero_de_vainas6
## 
##  One Sample t-test
## 
## data:  Genotipoo_6$Numero_de_Vainas
## t = 618.49, df = 9240, p-value < 2.2e-16
## alternative hypothesis: true mean is not equal to 0
## 95 percent confidence interval:
##  141.8863 142.7885
## sample estimates:
## mean of x 
##  142.3374
paste0("En base a los calculos realizados vemos que el genotipo que tiene en promedio el mayor numero de vainas por plantas es el G4 con una media de 156.1 y un intervalo de confianza comprendido entre 155.7 y 156.5; le sigue el G3 y luego G2 con 146.8 y 143.3 respectivamente")
## [1] "En base a los calculos realizados vemos que el genotipo que tiene en promedio el mayor numero de vainas por plantas es el G4 con una media de 156.1 y un intervalo de confianza comprendido entre 155.7 y 156.5; le sigue el G3 y luego G2 con 146.8 y 143.3 respectivamente"

Respuesta 2

# Ejecutar t.test para la cantidad de semillas por vaina y guardar el resultado
Numero_de_semillas_por_vaina1 <- t.test(Genotipoo_1$Numero_de_semillas_por_vaina, conf.level = 0.95)
Numero_de_semillas_por_vaina2 <- t.test(Genotipoo_2$Numero_de_semillas_por_vaina, conf.level = 0.95)
Numero_de_semillas_por_vaina3 <- t.test(Genotipoo_3$Numero_de_semillas_por_vaina, conf.level = 0.95)
Numero_de_semillas_por_vaina4 <- t.test(Genotipoo_4$Numero_de_semillas_por_vaina, conf.level = 0.95)
Numero_de_semillas_por_vaina5 <- t.test(Genotipoo_5$Numero_de_semillas_por_vaina, conf.level = 0.95)
Numero_de_semillas_por_vaina6 <- t.test(Genotipoo_6$Numero_de_semillas_por_vaina, conf.level = 0.95)
# Mostrar todo el resultado
Numero_de_semillas_por_vaina1
## 
##  One Sample t-test
## 
## data:  Genotipoo_1$Numero_de_semillas_por_vaina
## t = 98.199, df = 9240, p-value < 2.2e-16
## alternative hypothesis: true mean is not equal to 0
## 95 percent confidence interval:
##  89.57619 93.22523
## sample estimates:
## mean of x 
##  91.40071
Numero_de_semillas_por_vaina2
## 
##  One Sample t-test
## 
## data:  Genotipoo_2$Numero_de_semillas_por_vaina
## t = 100.66, df = 9241, p-value < 2.2e-16
## alternative hypothesis: true mean is not equal to 0
## 95 percent confidence interval:
##  90.08347 93.66160
## sample estimates:
## mean of x 
##  91.87254
Numero_de_semillas_por_vaina3
## 
##  One Sample t-test
## 
## data:  Genotipoo_3$Numero_de_semillas_por_vaina
## t = 93.026, df = 9241, p-value < 2.2e-16
## alternative hypothesis: true mean is not equal to 0
## 95 percent confidence interval:
##  82.03741 85.56917
## sample estimates:
## mean of x 
##  83.80329
Numero_de_semillas_por_vaina4
## 
##  One Sample t-test
## 
## data:  Genotipoo_4$Numero_de_semillas_por_vaina
## t = 139.43, df = 9241, p-value < 2.2e-16
## alternative hypothesis: true mean is not equal to 0
## 95 percent confidence interval:
##  128.1292 131.7831
## sample estimates:
## mean of x 
##  129.9562
Numero_de_semillas_por_vaina5
## 
##  One Sample t-test
## 
## data:  Genotipoo_5$Numero_de_semillas_por_vaina
## t = 132.24, df = 9241, p-value < 2.2e-16
## alternative hypothesis: true mean is not equal to 0
## 95 percent confidence interval:
##  118.0528 121.6053
## sample estimates:
## mean of x 
##   119.829
Numero_de_semillas_por_vaina6
## 
##  One Sample t-test
## 
## data:  Genotipoo_6$Numero_de_semillas_por_vaina
## t = 90.951, df = 9240, p-value < 2.2e-16
## alternative hypothesis: true mean is not equal to 0
## 95 percent confidence interval:
##  81.69862 85.29781
## sample estimates:
## mean of x 
##  83.49821
paste0("En base a los calculos realizados vemos que el genotipo que tiene en promedio la mayor cantidad de semillas por vaina es el G4 con una media de 129.8 y un intervalo de confianza comprendido entre 128.1 y 131.8; le sigue el G5 y luego G2 con 119.8 y 91.9 respectivamente ")
## [1] "En base a los calculos realizados vemos que el genotipo que tiene en promedio la mayor cantidad de semillas por vaina es el G4 con una media de 129.8 y un intervalo de confianza comprendido entre 128.1 y 131.8; le sigue el G5 y luego G2 con 119.8 y 91.9 respectivamente "

Respuesta 3

paste0("Como el G4 es el genotipo que en promedio tiene mayor cantidad de vainas por planta y mayor cantida de semillas por vaina, el es que dara en promedio mayor numero de semillas por planta")
## [1] "Como el G4 es el genotipo que en promedio tiene mayor cantidad de vainas por planta y mayor cantida de semillas por vaina, el es que dara en promedio mayor numero de semillas por planta"

##Situación 2. ###Teniendo en cuenta el genotipo que mas semillas da en promedio por planta. ###1. ¿Podemos decir que la proporción poblacional de estrés hídrico alto es menor al 45%?

Genotipo_4 <-Soja %>% filter(Genotipo == "G4")
Genotipo_4 
## # A tibble: 9,242 × 15
##    Genotipo Estrés_Hidrico Acido_Salicilico Altura_de_la_planta Numero_de_Vainas
##    <chr>    <chr>          <chr>                          <dbl>            <dbl>
##  1 G4       ALTO           Dosis Alta                       602              143
##  2 G4       ALTO           Dosis Alta                       563              145
##  3 G4       ALTO           Dosis Baja                       493              155
##  4 G4       BAJO           Control                          445              132
##  5 G4       ALTO           Dosis Baja                       493              155
##  6 G4       BAJO           Control                          432              130
##  7 G4       BAJO           Control                          432              130
##  8 G4       BAJO           Dosis Alta                       548              145
##  9 G4       BAJO           Dosis Baja                       522              156
## 10 G4       BAJO           Dosis Baja                       477              157
## # ℹ 9,232 more rows
## # ℹ 10 more variables: Peso_biologico <dbl>, Azúcares <dbl>,
## #   Contenido_relativo_de_agua_en_hojas <dbl>, Clorofila_A663 <dbl>,
## #   Clorofila_B649 <dbl>, Porcentaje_de_proteina <dbl>,
## #   Peso_de_300_semillas <dbl>, Indice_de_área_foliar <dbl>,
## #   Numero_de_semillas_por_vaina <dbl>, Contenido_de_proteina <dbl>

Contar el número de filas del G4

numero_filas <- nrow(Genotipo_4)
print(paste("El número total de G4:", numero_filas))
## [1] "El número total de G4: 9242"
#Transformamos la clumna Estres Hidrico en un factor para poder realizar los calculos
Genotipo_4$Estrés_Hidrico <- factor(Genotipo_4$Estrés_Hidrico)
#Seleccionamos G4 con Estres Hidrico ALTO
Genotipo_4_alto <-Genotipo_4 %>% filter(Estrés_Hidrico == "ALTO")
Genotipo_4_alto
## # A tibble: 3,995 × 15
##    Genotipo Estrés_Hidrico Acido_Salicilico Altura_de_la_planta Numero_de_Vainas
##    <chr>    <fct>          <chr>                          <dbl>            <dbl>
##  1 G4       ALTO           Dosis Alta                       602              143
##  2 G4       ALTO           Dosis Alta                       563              145
##  3 G4       ALTO           Dosis Baja                       493              155
##  4 G4       ALTO           Dosis Baja                       493              155
##  5 G4       ALTO           Dosis Baja                       477              157
##  6 G4       ALTO           Dosis Baja                       493              155
##  7 G4       ALTO           Dosis Baja                       493              155
##  8 G4       ALTO           Dosis Baja                       522              156
##  9 G4       ALTO           Dosis Baja                       522              156
## 10 G4       ALTO           Control                          453              131
## # ℹ 3,985 more rows
## # ℹ 10 more variables: Peso_biologico <dbl>, Azúcares <dbl>,
## #   Contenido_relativo_de_agua_en_hojas <dbl>, Clorofila_A663 <dbl>,
## #   Clorofila_B649 <dbl>, Porcentaje_de_proteina <dbl>,
## #   Peso_de_300_semillas <dbl>, Indice_de_área_foliar <dbl>,
## #   Numero_de_semillas_por_vaina <dbl>, Contenido_de_proteina <dbl>

Contar dentro de G4 el número de filas con estres hidrico ALTO

numero_filas <- nrow(Genotipo_4_alto)
print(paste("El número total de ALTO:", numero_filas))
## [1] "El número total de ALTO: 3995"

Con los datos de las cantidad de plantas de la variedad G4 y la cantidad de estas que tienen una tolerancia ALTA al estres hidrico. Puedo plantar las siguientes hipotesis para deperminar si la proporcion poblacional de G4 con estres hidrico ALTO es menor al 45%

Ho: p ≥ 0.45

H1: p < 0.45

prop.test(x = 3995, n = 9242, p = 0.45, alternative = "less", conf.level = 0.95, correct = FALSE)
## 
##  1-sample proportions test without continuity correction
## 
## data:  3995 out of 9242, null probability 0.45
## X-squared = 11.744, df = 1, p-value = 0.0003052
## alternative hypothesis: true p is less than 0.45
## 95 percent confidence interval:
##  0.0000000 0.4407604
## sample estimates:
##         p 
## 0.4322657

Como el p-valor estimado 0,4322657 es menor que 0,45, rechazo la hipotesis nula, por lo tanto No se puede decir que la proporcion poblacional de estres hidrico alto es menor al 45%

##Situación 3. ###También teniendo el genotipo que más semillas no da en promedio por planta. ###1. ¿Se observa ganancias en la altura promedio de las plantas con aplicación de ácido salicílico a dosis alta y a dosis baja en comparación con el grupo control? Para esto calcule las diferencias de medias para ambos grupos de tratamiento con el grupo control. ###2. ¿Se observa que la proporción de plantas con estrés hídrico alto es diferente a la proporción de plantas con riesgo hídrico bajo? Calcula la diferencia de proporciones para ambos grupos. ### Respuesta 1 ### Contar dentro de G4 el número de filas con Acido Salicilico Dosis Alta

#Seleccionamos G4 con Acido Salicilico Dosis Alta 
Genotipo_4_dosisalta <-Genotipo_4 %>% filter(Acido_Salicilico == "Dosis Alta")
Genotipo_4_dosisalta
## # A tibble: 3,081 × 15
##    Genotipo Estrés_Hidrico Acido_Salicilico Altura_de_la_planta Numero_de_Vainas
##    <chr>    <fct>          <chr>                          <dbl>            <dbl>
##  1 G4       ALTO           Dosis Alta                       602              143
##  2 G4       ALTO           Dosis Alta                       563              145
##  3 G4       BAJO           Dosis Alta                       548              145
##  4 G4       BAJO           Dosis Alta                       558              145
##  5 G4       BAJO           Dosis Alta                       591              143
##  6 G4       BAJO           Dosis Alta                       558              145
##  7 G4       BAJO           Dosis Alta                       568              145
##  8 G4       BAJO           Dosis Alta                       578              145
##  9 G4       BAJO           Dosis Alta                       607              143
## 10 G4       BAJO           Dosis Alta                       563              145
## # ℹ 3,071 more rows
## # ℹ 10 more variables: Peso_biologico <dbl>, Azúcares <dbl>,
## #   Contenido_relativo_de_agua_en_hojas <dbl>, Clorofila_A663 <dbl>,
## #   Clorofila_B649 <dbl>, Porcentaje_de_proteina <dbl>,
## #   Peso_de_300_semillas <dbl>, Indice_de_área_foliar <dbl>,
## #   Numero_de_semillas_por_vaina <dbl>, Contenido_de_proteina <dbl>
numero_filas <- nrow(Genotipo_4_dosisalta)
print(paste("El número total de Dosis Alta:", numero_filas))
## [1] "El número total de Dosis Alta: 3081"
#Seleccionamos G4 con Acido Salicilico Dosis Baja 
Genotipo_4_dosisbaja <-Genotipo_4 %>% filter(Acido_Salicilico == "Dosis Baja")
Genotipo_4_dosisbaja
## # A tibble: 3,080 × 15
##    Genotipo Estrés_Hidrico Acido_Salicilico Altura_de_la_planta Numero_de_Vainas
##    <chr>    <fct>          <chr>                          <dbl>            <dbl>
##  1 G4       ALTO           Dosis Baja                       493              155
##  2 G4       ALTO           Dosis Baja                       493              155
##  3 G4       BAJO           Dosis Baja                       522              156
##  4 G4       BAJO           Dosis Baja                       477              157
##  5 G4       BAJO           Dosis Baja                       522              156
##  6 G4       BAJO           Dosis Baja                       493              155
##  7 G4       BAJO           Dosis Baja                       477              157
##  8 G4       BAJO           Dosis Baja                       477              157
##  9 G4       BAJO           Dosis Baja                       493              155
## 10 G4       BAJO           Dosis Baja                       477              157
## # ℹ 3,070 more rows
## # ℹ 10 more variables: Peso_biologico <dbl>, Azúcares <dbl>,
## #   Contenido_relativo_de_agua_en_hojas <dbl>, Clorofila_A663 <dbl>,
## #   Clorofila_B649 <dbl>, Porcentaje_de_proteina <dbl>,
## #   Peso_de_300_semillas <dbl>, Indice_de_área_foliar <dbl>,
## #   Numero_de_semillas_por_vaina <dbl>, Contenido_de_proteina <dbl>
numero_filas <- nrow(Genotipo_4_dosisbaja)
print(paste("El número total de Dosis Baja:", numero_filas))
## [1] "El número total de Dosis Baja: 3080"
#Seleccionamos G4 con Acido Salicilico Control
Genotipo_4_control <-Genotipo_4 %>% filter(Acido_Salicilico == "Control")
Genotipo_4_control
## # A tibble: 3,081 × 15
##    Genotipo Estrés_Hidrico Acido_Salicilico Altura_de_la_planta Numero_de_Vainas
##    <chr>    <fct>          <chr>                          <dbl>            <dbl>
##  1 G4       BAJO           Control                          445              132
##  2 G4       BAJO           Control                          432              130
##  3 G4       BAJO           Control                          432              130
##  4 G4       BAJO           Control                          453              131
##  5 G4       BAJO           Control                          432              130
##  6 G4       BAJO           Control                          453              131
##  7 G4       BAJO           Control                          453              131
##  8 G4       BAJO           Control                          453              131
##  9 G4       BAJO           Control                          453              131
## 10 G4       BAJO           Control                          432              130
## # ℹ 3,071 more rows
## # ℹ 10 more variables: Peso_biologico <dbl>, Azúcares <dbl>,
## #   Contenido_relativo_de_agua_en_hojas <dbl>, Clorofila_A663 <dbl>,
## #   Clorofila_B649 <dbl>, Porcentaje_de_proteina <dbl>,
## #   Peso_de_300_semillas <dbl>, Indice_de_área_foliar <dbl>,
## #   Numero_de_semillas_por_vaina <dbl>, Contenido_de_proteina <dbl>
numero_filas <- nrow(Genotipo_4_control)
print(paste("El número total de Control:", numero_filas))
## [1] "El número total de Control: 3081"
# Calcular la media de cada tratamiento: dosis alta, dosis baja y el grupo control
media_muestralc <- mean(Genotipo_4_control$Altura_de_la_planta)
print(paste("Media del Control:",media_muestralc ))
## [1] "Media del Control: 429.994157740993"
media_muestralda <- mean(Genotipo_4_dosisalta$Altura_de_la_planta)
print(paste("Media del Dosis Alta:",media_muestralda ))
## [1] "Media del Dosis Alta: 540.645894190198"
media_muestraldb <- mean(Genotipo_4_dosisbaja$Altura_de_la_planta)
print(paste("Media del Control:",media_muestraldb ))
## [1] "Media del Control: 498.674675324675"
# Calcular la diferencia de medias usar la función t.test() para una prueba de hipótesis
diferencia_mda <-(media_muestralda) - mean(media_muestralc)
print(paste("Diferencia Media Dosis Alta y del Control:",diferencia_mda ))
## [1] "Diferencia Media Dosis Alta y del Control: 110.651736449205"
diferencia_mdb <-(media_muestraldb) - mean(media_muestralc)
print(paste("Diferencia Media Dosis Baja y del Control:",diferencia_mdb ))
## [1] "Diferencia Media Dosis Baja y del Control: 68.6805175836822"

Si se observa ganancia en la altura promedio de las plantas con la aplicacion de acido salicilico en las dos dosis.

Respuesta 2

Calculo de las proporciones:

prop_muestralda <- mean(Genotipo_4$Acido_Salicilico == "Dosis Alta", na.rm = TRUE)
print(paste("Proporcion de Dosis Alta:",prop_muestralda ))
## [1] "Proporcion de Dosis Alta: 0.333369400562649"
prop_muestraldb <- mean(Genotipo_4$Acido_Salicilico == "Dosis Baja", na.rm = TRUE)
print(paste("Proporcion de Dosis Alta:",prop_muestraldb ))
## [1] "Proporcion de Dosis Alta: 0.333261198874702"

Calculamos de diferencia de proporciones

dif_dosis <- prop_muestralda - prop_muestraldb
print(paste("La diferencia de Proporcion para Dosis Alta y Dosis Baja es=:",dif_dosis  ))
## [1] "La diferencia de Proporcion para Dosis Alta y Dosis Baja es=: 0.000108201687946341"