Taller de R y RStudio
Facultad de Ciencias Agrarias - Universidad Nacional de Catamarca

En el contexto de dicha evaluación de análisis exploratorio de datos, se realizará un análisis comparativo gráfico de dos variedades de mandarinas cultivadas en el Campo Experimental de la Facultad de Ciencias Agrarias de la UNCA, de modo explorativo buscando analizar y evaluar sus relaciones mediante las herramientas del software R y RStudio. Para el desarrollo de este análisis seguiremos un flujo de trabajo que consta de: Instalación y Cargar paquetes, Importar, Ordenar, Transformar, Visualizar y Comunicar. ________________________________________________________________________________________________________________

Instalación y activación de los paquetes necesarios

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.1     ✔ tibble    3.2.1
## ✔ lubridate 1.9.3     ✔ tidyr     1.3.1
## ✔ 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(readxl)
library(dplyr)
library(ggplot2)

Base de datos

Importamos la base de datos que se utilizará para el análisis requerido.

MANDARINAS_2024 <- read_excel("MANDARINAS_2024.xlsx")
glimpse(MANDARINAS_2024)
## Rows: 419
## Columns: 8
## $ N             <dbl> 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 1…
## $ GRUPO         <dbl> 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,…
## $ VARIEDAD      <chr> "Clementina", "Clementina", "Clementina", "Clementina", …
## $ N_DE_FRUTO    <dbl> 19, 9, 21, 8, 4, 30, 22, 23, 17, 27, 29, 14, 16, 13, 25,…
## $ PESO          <dbl> 101, 122, 127, 126, 37, 139, 140, 130, 138, 142, 121, 15…
## $ DIAM_ECUAT    <dbl> 64.2, 64.2, 64.7, 64.9, 65.9, 66.4, 67.1, 67.5, 68.2, 68…
## $ NIVEL_DE_DAÑO <dbl> 1, 0, 3, 3, 2, 2, 3, 1, 2, 2, 2, 1, 1, 2, 1, 1, 0, 1, 0,…
## $ COLOR         <dbl> 4, 5, 4, 1, 5, 4, 4, 3, 3, 4, 4, 1, 1, 3, 4, 1, 4, 1, 5,…
MANDARINAS_2024
## # A tibble: 419 × 8
##        N GRUPO VARIEDAD   N_DE_FRUTO  PESO DIAM_ECUAT NIVEL_DE_DAÑO COLOR
##    <dbl> <dbl> <chr>           <dbl> <dbl>      <dbl>         <dbl> <dbl>
##  1     1     1 Clementina         19   101       64.2             1     4
##  2     2     1 Clementina          9   122       64.2             0     5
##  3     3     1 Clementina         21   127       64.7             3     4
##  4     4     1 Clementina          8   126       64.9             3     1
##  5     5     1 Clementina          4    37       65.9             2     5
##  6     6     1 Clementina         30   139       66.4             2     4
##  7     7     1 Clementina         22   140       67.1             3     4
##  8     8     1 Clementina         23   130       67.5             1     3
##  9     9     1 Clementina         17   138       68.2             2     3
## 10    10     1 Clementina         27   142       68.2             2     4
## # ℹ 409 more rows
names(MANDARINAS_2024)
## [1] "N"             "GRUPO"         "VARIEDAD"      "N_DE_FRUTO"   
## [5] "PESO"          "DIAM_ECUAT"    "NIVEL_DE_DAÑO" "COLOR"

Análisis Exploratorio

Para realizar los gráficos es necesario crear nuevos objetos que contenga los datos filtrados y ordenados según la consiga lo indique.

1. Análisis Comparativo de Variedades

Para comparar las variedades “Clementina” y “Criolla” utilizando las variables “peso” y “diámetro ecuatorial” por separado filtramos las observaciones de los grupos asignados (4 y 6), sin hacer distincion de éstos, para cada variedad.

  • Variable Peso:

El primer nuevo objeto corresponde al peso del fruto según la variedad, incorporando los valores de ambos grupos.

PESOS <- MANDARINAS_2024 %>%
filter(VARIEDAD == "Criolla" | VARIEDAD == "Clementina",
       GRUPO %in% c(4, 6)) %>%
select(GRUPO, VARIEDAD, PESO)

PESOS
## # A tibble: 120 × 3
##    GRUPO VARIEDAD    PESO
##    <dbl> <chr>      <dbl>
##  1     4 Clementina    64
##  2     4 Clementina    79
##  3     4 Clementina    90
##  4     4 Clementina    94
##  5     4 Clementina    99
##  6     4 Clementina   109
##  7     4 Clementina   123
##  8     4 Clementina   126
##  9     4 Clementina   123
## 10     4 Clementina   121
## # ℹ 110 more rows

Visualizamos este análisis mediante un gráfico de histograma que nos muestra, para cada variedad, seis intervalos sobre los valores de peso y la frecuencia con la que éstos se presentan.

ggplot(PESOS, aes(x = PESO, fill = VARIEDAD)) +
  geom_histogram(bins = 6, position = "dodge") +
  geom_freqpoly(binwidth = 30, color = "black", linewidth = 0.5) +
  labs(title = "Distribución del Peso según la Variedad",
       x = "Peso",
       y = "Frecuencia",
       fill = "Variedad") +
  facet_grid(.~ VARIEDAD) +
  theme_classic() +
  scale_fill_manual(values = c("Criolla" = "orange", "Clementina" = "orangered3"))

Gráfico Nº1: Histograma según el peso y la variedad

Con base en el gráfico Nº1, podemos observar valores con mayor frecuencia en la variedad Criolla entre 150 a 180 gramos pero no es una diferencia significativa con respecto a la variedad Clementina ya que en pesos más altos no es consistente con solo una mandarina en los pesos de 200 gramos.

  • Variable Diámetro Ecuatorial:

Para esta variable creamos un objeto que contenga el diámetro del fruto según la variedad, incorporando los valores de ambos grupos.

DIAMETROS <- MANDARINAS_2024 %>%
filter(VARIEDAD == "Clementina" | VARIEDAD == "Criolla",
       GRUPO %in% c(4, 6)) %>%
select(GRUPO, VARIEDAD, DIAM_ECUAT)

DIAMETROS
## # A tibble: 120 × 3
##    GRUPO VARIEDAD   DIAM_ECUAT
##    <dbl> <chr>           <dbl>
##  1     4 Clementina       50.3
##  2     4 Clementina       50.4
##  3     4 Clementina       50.9
##  4     4 Clementina       60.1
##  5     4 Clementina       60.1
##  6     4 Clementina       60.1
##  7     4 Clementina       60.5
##  8     4 Clementina       60.5
##  9     4 Clementina       60.6
## 10     4 Clementina       60.7
## # ℹ 110 more rows

A través de los valores promedio ya calculados e incorporados en un objeto “DIAMETROS” podemos visualizar la comparación entre las variedad mediante un gráfico de tipo boxplot .

ggplot(DIAMETROS, aes(x = factor(VARIEDAD), y = DIAM_ECUAT, fill = VARIEDAD)) +
  geom_boxplot() +
  labs(x = "Variedad", y = "Diámetro", title = "Comparación de Diámetro entre Variedades") +
  theme_minimal() +
  stat_summary(fun = mean, color = "black") +
  scale_fill_manual(values = c("Criolla" = "orange", "Clementina" = "orangered3"))
## Warning: Removed 2 rows containing missing values or values outside the scale range
## (`geom_segment()`).

Gráfico Nº2: Boxplot según el diámetro ecuatorial de cada variedad

Con respecto a los diámetros de las variedades, las mismas no presentan grandes diferencias, ya que ambas presentan una distribución semejante teniendo una mayor frecuencia en diametros cercanos a los 70cm.

2. Relación entre Peso y Diámetro por Grupo

Para esta consigna se analiza la relación entre el peso y el diámetro ecuatorial de las mandarinas según el grupo, Nº4 o Nº6.

Desde la base de datos original partimos creando un objeto en el que se encuentren filtrados los valores de peso y diámetro ecuatorial de ambas variedad, sin hacer distinción de ellas, y seleccionando los grupos.

GRUPOS <- MANDARINAS_2024 %>%
filter(VARIEDAD %in% c("Criolla", "Clementina"),
       GRUPO == 4 | GRUPO == 6 ) %>%
select(GRUPO, VARIEDAD, DIAM_ECUAT, PESO)

GRUPOS
## # A tibble: 120 × 4
##    GRUPO VARIEDAD   DIAM_ECUAT  PESO
##    <dbl> <chr>           <dbl> <dbl>
##  1     4 Clementina       50.3    64
##  2     4 Clementina       50.4    79
##  3     4 Clementina       50.9    90
##  4     4 Clementina       60.1    94
##  5     4 Clementina       60.1    99
##  6     4 Clementina       60.1   109
##  7     4 Clementina       60.5   123
##  8     4 Clementina       60.5   126
##  9     4 Clementina       60.6   123
## 10     4 Clementina       60.7   121
## # ℹ 110 more rows

Con el propósito de ver cómo se distribuyen los valores de las mandarinas de cada grupo según su peso y diámetro ecuatorial reliazmos un gráfico de puntos o dispersión.

ggplot(GRUPOS, aes(PESO, DIAM_ECUAT, colour = factor(GRUPO))) +
  geom_point() +
  labs(x = "Peso", y = "Diámetro", title = "Relación Peso-Diámetro Ecuatorial según el grupo") +
  facet_grid(GRUPO ~.) +
  theme_gray()

Gráfico Nº3: Gráfico de dispersión del peso y diámetro ecuatorial según el grupo perteneciente

¿Observa alguna diferencia notable en la distribución del peso y el diámetro entre los dos grupos seleccionados? Comente sobre cualquier patrón o tendencia identificada.

Si se puede ver que entre ambos tienen una relación sobre el diámetro y el peso, entre los grupos una medición más constante el grupo 6 mientras que el grupo 4 tiene inconsistencias en sus mediciones.

3. Relación entre Peso y Diámetro por Variedad

A fin de observar la relación entre el peso y el diámetro ecuatorial de las mandarinas, diferenciada variedades:

Empezamos creando un objeto en el que se encuentren filtrados los valores de peso y diámetro ecuatorial de ambos grupos, sin hacer distinción de ellos, y seleccionando cada una de las variedades.

RELACIONV <- MANDARINAS_2024 %>%
filter(VARIEDAD == "Criolla" | VARIEDAD == "Clementina",
       GRUPO %in% c(4, 6)) %>%
select(GRUPO, VARIEDAD, DIAM_ECUAT, PESO)

RELACIONV
## # A tibble: 120 × 4
##    GRUPO VARIEDAD   DIAM_ECUAT  PESO
##    <dbl> <chr>           <dbl> <dbl>
##  1     4 Clementina       50.3    64
##  2     4 Clementina       50.4    79
##  3     4 Clementina       50.9    90
##  4     4 Clementina       60.1    94
##  5     4 Clementina       60.1    99
##  6     4 Clementina       60.1   109
##  7     4 Clementina       60.5   123
##  8     4 Clementina       60.5   126
##  9     4 Clementina       60.6   123
## 10     4 Clementina       60.7   121
## # ℹ 110 more rows

Por último, se genera un gráfico de dispersión de modo que de visualizar la relacion entre las dos variables continuas a través de la disposición de los puntos.

ggplot(RELACIONV, aes(x = PESO, y = DIAM_ECUAT, shape = VARIEDAD, color = VARIEDAD)) +
  geom_point(size= 2) +
  labs(x = "Peso", y = "Diámetro", title = "Relación Peso-Diámetro Ecuatorial según la variedad")

Gráfico Nº4: Gráfico de dispersión del peso y diámetro ecuatorial según la variedad

¿Existen diferencias notables en la distribución del peso y el diámetro entre las variedades “Clementina” y “Criolla”? Describa cualquier patrón o tendencia observada.

No existe una diferencia notable entre la relación PESO-DIÁMETRO entre las VARIEDADES pero se observa que aunque poco la Variedad Clementina tiene mas peso y diámetro mayor que la Variedad Criolla.