#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?
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)
Soja <- read_excel("SoybeanDataset.xlsx")
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>
# 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"
# 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 "
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>
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>
numero_filas <- nrow(Genotipo_4_alto)
print(paste("El número total de ALTO:", numero_filas))
## [1] "El número total de ALTO: 3995"
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
##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"
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"
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"