1. Objetivo del informe

Se busca realizar una descripción general de los datos correspondientes a una muestra de 69 marcas de cerveza. La información incluye variables cuantitativas, entre ellas el precio, las calorías y el porcentaje de alcohol, así como variables cualitativas relacionadas con el tipo de cerveza y su lugar de origen.

Nota importante para evitar confusiones: aunque el archivo mencionado fue beer2.csv, en la carpeta también aparece beer.csv, que sí contiene exactamente las 69 marcas del enunciado. Por eso este informe se construye con beer.csv.

beer <- read.csv("/Users/angelicagonzalez/Downloads/beer.csv")

beer$tipo <- factor(
  beer$tipo,
  levels = 1:5,
  labels = c("Lager artesanal", "Clara artesanal", "Lager importada",
             "Cerveza normal y helada", "Baja en calorías / sin alcohol")
)

beer$origen <- factor(
  beer$origen,
  levels = c(0, 1),
  labels = c("Nacional", "Importada")
)

str(beer)
## 'data.frame':    69 obs. of  6 variables:
##  $ marca   : chr  "m1" "m2" "m3" "m4" ...
##  $ precio  : chr  "6,24" "4,79" "5,96" "4,7" ...
##  $ calorias: int  159 160 160 162 157 151 155 135 162 142 ...
##  $ poralcoh: chr  "5,2" "5" "4,9" "4,9" ...
##  $ tipo    : Factor w/ 5 levels "Lager artesanal",..: 1 1 1 1 1 1 1 1 1 1 ...
##  $ origen  : Factor w/ 2 levels "Nacional","Importada": 2 2 2 2 2 2 2 2 2 2 ...

2. Descripción de las variables

Variable Tipo estadístico Escala Interpretación
marca Cualitativa identificadora Nominal Código de la marca: m1, m2, …, m69. No se promedia.
precio Cuantitativa continua Razón Precio de una caja de seis botellas de 12 onzas.
calorias Cuantitativa continua/discreta Razón Calorías contenidas en una unidad de 12 onzas.
poralcoh Cuantitativa continua Razón Porcentaje de alcohol por 12 onzas.
tipo Cualitativa Nominal Clasificación comercial de la cerveza.
origen Cualitativa dicotómica Nominal Nacional o importada.

Idea para explicar en clase: las variables cuantitativas se resumen con media, mediana, desviación estándar, cuartiles y coeficiente de variación. Las variables cualitativas se resumen con frecuencias y porcentajes.

3. Tamaño de la base

La base analizada tiene 69 marcas y 6 variables principales de análisis: precio, calorías, porcentaje de alcohol, tipo y origen.

dim(beer)
## [1] 69  6
head(beer)
##   marca precio calorias poralcoh            tipo    origen
## 1    m1   6,24      159      5,2 Lager artesanal Importada
## 2    m2   4,79      160        5 Lager artesanal Importada
## 3    m3   5,96      160      4,9 Lager artesanal Importada
## 4    m4    4,7      162      4,9 Lager artesanal Importada
## 5    m5   4,11      157      5,5 Lager artesanal Importada
## 6    m6   3,85      151      4,9 Lager artesanal Importada

4. Tablas de frecuencia para variables cualitativas

4.1 Tipo de cerveza

Código Categoría Frecuencia Porcentaje
1 Lager artesanal 13 18.8%
2 Clara artesanal 17 24.6%
3 Lager importada 10 14.5%
4 Cerveza normal y helada 16 23.2%
5 Baja en calorías / sin alcohol 13 18.8%

Interpretación: la categoría con mayor presencia es clara artesanal, con 17 marcas. Esto representa 24.6% de la muestra. La muestra está repartida entre los cinco tipos, aunque no de forma exactamente uniforme.

tabla_tipo <- beer |>
  count(tipo) |>
  mutate(porcentaje = 100*n/sum(n))
kable(tabla_tipo, digits = 2)
tipo n porcentaje
Lager artesanal 13 18.84
Clara artesanal 17 24.64
Lager importada 10 14.49
Cerveza normal y helada 16 23.19
Baja en calorías / sin alcohol 13 18.84

4.2 Origen

Código Categoría Frecuencia Porcentaje
0 Nacional 15 21.7%
1 Importada 54 78.3%

Interpretación: predominan las cervezas importadas: hay 54 importadas de 69, equivalentes al 78.3%. Las nacionales son 15, equivalentes al 21.7%.

tabla_origen <- beer |>
  count(origen) |>
  mutate(porcentaje = 100*n/sum(n))
kable(tabla_origen, digits = 2)
origen n porcentaje
Nacional 15 21.74
Importada 54 78.26

5. Indicadores descriptivos de variables cuantitativas

Variable n Media Mediana Desv. est. Varianza Mín. Q1 Q3 Máx. IQR CV Asimetría
Precio caja de seis botellas 69 4.96 4.79 1.45 2.09 2.36 3.90 6.24 7.80 2.34 29.1% 0.11
Calorías por 12 onzas 69 142.35 148 29.90 894.14 58 142 160 201 18 21.0% -1.30
Porcentaje de alcohol 69 4.42 4.90 1.57 2.48 0 4.40 5.10 6 0.70 35.6% -2.22

5.1 Precio

El precio promedio es 4.96, mientras que la mediana es 4.79. Ambos valores son cercanos, el centro de la distribución se ubica alrededor de 5 unidades monetarias. La desviación estándar es 1.45, y el coeficiente de variación es 29.1%, lo que indica una variabilidad moderada del precio.

Límites: [0.39, 9.75]. No se detectan valores atípicos.

5.2 Calorías

El promedio de calorías es 142.35 y la mediana es 148. La mediana es mayor que la media porque existen cervezas con muy pocas calorías, especialmente las bajas en calorías o sin alcohol, que jalan el promedio hacia abajo.

Límites: [115, 187]. Valores atípicos: 58, 60, 70, 71, 72, 82, 95, 96, 96, 105, 110, 110, 201.

5.3 Porcentaje de alcohol

El porcentaje promedio de alcohol es 4.42%, mientras que la mediana es 4.90%. La mediana es mayor que la media porque hay varias cervezas con 0% de alcohol, lo cual reduce el promedio.

Límites: [3.35, 6.15]. Valores atípicos: 0, 0, 0, 0, 0, 0, 0.

resumen <- beer |>
  summarise(
    n = n(),
    media_precio = mean(precio),
    mediana_precio = median(precio),
    sd_precio = sd(precio),
    media_calorias = mean(calorias),
    mediana_calorias = median(calorias),
    sd_calorias = sd(calorias),
    media_alcohol = mean(poralcoh),
    mediana_alcohol = median(poralcoh),
    sd_alcohol = sd(poralcoh)
  )
kable(resumen, digits = 2)
n media_precio mediana_precio sd_precio media_calorias mediana_calorias sd_calorias media_alcohol mediana_alcohol sd_alcohol
69 NA 4,79 NA 142.35 148 29.9 NA 4,9 NA

6. Resumen por tipo de cerveza

Tipo precio_count precio_mean precio_median precio_std calorias_count calorias_mean calorias_median calorias_std poralcoh_count poralcoh_mean poralcoh_median poralcoh_std
Baja en calorías / sin alcohol 13 4.08 4.02 1.13 13 89.15 95 22.59 13 1.92 0 2.17
Cerveza normal y helada 16 3.60 3.86 0.63 16 145.75 144.50 6.44 16 4.90 4.90 0.37
Clara artesanal 17 6.50 6.42 0.76 17 165.41 163 15.56 17 5.28 5.30 0.60
Lager artesanal 13 4.86 4.79 1.20 13 154.38 157 9.59 13 4.94 4.90 0.35
Lager importada 10 5.82 5.75 0.90 10 151.20 149 6.68 10 4.77 4.95 0.33

Interpretación por tipo:

beer |>
  group_by(tipo) |>
  summarise(
    n = n(),
    precio_promedio = mean(precio),
    calorias_promedio = mean(calorias),
    alcohol_promedio = mean(poralcoh),
    .groups = "drop"
  ) |>
  kable(digits = 2)
tipo n precio_promedio calorias_promedio alcohol_promedio
Lager artesanal 13 NA 154.38 NA
Clara artesanal 17 NA 165.41 NA
Lager importada 10 NA 151.20 NA
Cerveza normal y helada 16 NA 145.75 NA
Baja en calorías / sin alcohol 13 NA 89.15 NA

7. Resumen por origen

Origen precio_count precio_mean precio_median precio_std calorias_count calorias_mean calorias_median calorias_std poralcoh_count poralcoh_mean poralcoh_median poralcoh_std
Importada 54 4.71 4.06 1.48 54 143.39 148 30.67 54 4.50 4.90 1.53
Nacional 15 5.86 5.68 0.90 15 138.60 148 27.61 15 4.13 4.90 1.74

De acuerdo con los resultados de la muestra, el precio promedio de las cervezas nacionales es superior al de las cervezas importadas. No obstante, esta diferencia debe interpretarse con precaución, ya que está condicionada por la composición de la muestra y las variedades de cerveza que fueron consideradas. Por lo tanto, no se puede concluir directamente que todas las cervezas nacionales tengan un precio más elevado.

beer |>
  group_by(origen) |>
  summarise(
    n = n(),
    precio_promedio = mean(precio),
    calorias_promedio = mean(calorias),
    alcohol_promedio = mean(poralcoh),
    .groups = "drop"
  ) |>
  kable(digits = 2)
origen n precio_promedio calorias_promedio alcohol_promedio
Nacional 15 NA 138.60 NA
Importada 54 NA 143.39 NA

8. Relación entre variables cuantitativas

Matriz de correlación:

Variable precio calorias poralcoh
precio 1 0.424 0.295
calorias 0.424 1 0.883
poralcoh 0.295 0.883 1

La relación más fuerte se observa entre calorías y porcentaje de alcohol, con una correlación aproximada de 0.883. Esto quiere decir que, dentro de esta muestra, las cervezas con mayor porcentaje de alcohol tienden también a tener más calorías.

La relación entre precio y calorías es positiva pero moderada, aproximadamente 0.424. La relación entre precio y alcohol también es positiva pero más débil, aproximadamente 0.295.

beer <- read.csv("beer.csv", dec = ",")

beer$precio <- as.numeric(beer$precio)
beer$calorias <- as.numeric(beer$calorias)
beer$poralcoh <- as.numeric(beer$poralcoh)

cor(beer[, c("precio", "calorias", "poralcoh")])
##             precio  calorias  poralcoh
## precio   1.0000000 0.4236851 0.2949747
## calorias 0.4236851 1.0000000 0.8826171
## poralcoh 0.2949747 0.8826171 1.0000000
cor(beer[, c("precio", "calorias", "poralcoh")])
##             precio  calorias  poralcoh
## precio   1.0000000 0.4236851 0.2949747
## calorias 0.4236851 1.0000000 0.8826171
## poralcoh 0.2949747 0.8826171 1.0000000

9. Gráficos sugeridos para la explicación

ggplot(beer, aes(x = precio)) +
  geom_histogram(bins = 10, fill = "#4C78A8", color = "white") +
  labs(title = "Distribución del precio", x = "Precio", y = "Frecuencia")

ggplot(beer, aes(x = calorias)) +
  geom_histogram(bins = 10, fill = "#59A14F", color = "white") +
  labs(title = "Distribución de calorías", x = "Calorías", y = "Frecuencia")

ggplot(beer, aes(x = poralcoh)) +
  geom_histogram(bins = 10, fill = "#F28E2B", color = "white") +
  labs(title = "Distribución del porcentaje de alcohol", x = "Alcohol (%)", y = "Frecuencia")

ggplot(beer, aes(x = tipo, y = precio)) +
  geom_boxplot(fill = "#E15759", alpha = 0.7) +
  coord_flip() +
  labs(title = "Precio por tipo de cerveza", x = "Tipo", y = "Precio")

ggplot(beer, aes(x = poralcoh, y = calorias, color = tipo)) +
  geom_point(size = 2) +
  labs(title = "Relación entre alcohol y calorías", x = "Alcohol (%)", y = "Calorías")

10. Análisis final de resultados

En la muestra predominan las cervezas importadas, con 54 de las 69 marcas analizadas. En cuanto a la clasificación por tipo de cerveza, la categoría con mayor presencia es la clara artesanal, seguida por la cerveza normal y la cerveza helada.

Respecto al precio, se obtiene una media de 4.96 y una mediana de 4.79. Estos valores muestran que el precio habitual se sitúa aproximadamente en 5 unidades monetarias por una caja de seis botellas. Además, los precios presentan una variabilidad moderada, reflejada en un coeficiente de variación del 29.1%.

En relación con las calorías, se registra una media de 142.35 y una mediana de 148. La distribución muestra un sesgo negativo, debido a la presencia de cervezas con un contenido calórico bastante bajo. Esta característica se evidencia principalmente en la categoría de cervezas bajas en calorías o sin alcohol.

El porcentaje de alcohol presenta una media de 4.42% y una mediana de 4.90%. Esta diferencia se debe principalmente a la inclusión de cervezas sin alcohol, las cuales reducen el valor promedio. Por esta razón, la mediana puede ser un indicador más representativo del consumo típico que la media.

La relación más evidente se encuentra entre el contenido de alcohol y las calorías, ya que se observa una tendencia a que las calorías aumenten conforme se incrementa el porcentaje de alcohol. Aunque este comportamiento es coherente con las características del producto, debe entenderse únicamente como una asociación descriptiva y no como una relación de causalidad.

11. Concepto para el director de investigación

A partir del análisis descriptivo inicial, la base de datos permite organizar las cervezas según su tipo y procedencia, además de establecer comparaciones entre sus precios, contenido calórico y porcentaje de alcohol. Como punto de partida para profundizar en el análisis, se propone enfocarse en tres cruces principales:

  1. Tipo de cerveza vs. precio, para identificar segmentos de mayor y menor precio.
  2. Tipo de cerveza vs. calorías y alcohol, para validar si las categorías cumplen con su descripción comercial.
  3. Origen vs. precio, para examinar si las diferencias observadas se mantienen cuando se controla por tipo de cerveza.

La recomendación principal es no quedarse solo con promedios generales. Como la muestra mezcla cervezas artesanales, importadas, normales y sin alcohol, el análisis por grupos es más claro y evita conclusiones engañosas.