Análisis de las preferencias de compra entre productos alimenticios locales y grandes cadenas comerciales

Nicolas Y Mile

2026-05-30

Introducción

Las decisiones de compra de alimentos constituyen un aspecto fundamental dentro del comportamiento del consumidor y tienen un impacto directo sobre la economía local y regional. En Bogotá, los consumidores pueden adquirir productos alimenticios a través de mercados locales, tiendas de barrio, plazas de mercado y grandes cadenas comerciales.

Durante los últimos años se ha evidenciado un creciente interés por fortalecer los mercados campesinos y promover el consumo de productos locales. Sin embargo, las grandes cadenas comerciales continúan siendo una alternativa importante debido a factores como precios, promociones, variedad y comodidad.

Planteamiento del problema

Pregunta de investigación

¿Existe preferencia entre productos alimenticios locales y productos de grandes cadenas comerciales en los consumidores encuestados?

Justificación

El presente estudio busca comprender las preferencias de compra de los consumidores bogotanos. Los resultados permitirán identificar factores asociados a la toma de decisiones de compra y aplicar herramientas de estadística descriptiva e inferencial para generar conclusiones fundamentadas.

Objetivos

Objetivo general

Analizar las preferencias de compra entre productos alimenticios locales y grandes cadenas comerciales mediante herramientas de estadística inferencial.

Objetivos específicos

  • Identificar las preferencias de compra de los consumidores.
  • Determinar los factores que influyen en la elección de productos alimenticios.
  • Comparar comportamientos de compra según variables sociodemográficas.
  • Analizar el gasto mensual destinado a alimentos.
  • Aplicar pruebas de hipótesis e intervalos de confianza para interpretar los resultados obtenidos.

Marco teórico

Comportamiento del consumidor

El comportamiento del consumidor estudia los procesos mediante los cuales las personas seleccionan, adquieren y utilizan bienes y servicios para satisfacer sus necesidades (Kotler & Armstrong, 2017).

Productos locales y grandes cadenas

Los productos locales contribuyen al fortalecimiento de la economía regional y al apoyo de pequeños productores. Las grandes cadenas ofrecen ventajas como variedad, precios competitivos, horarios extendidos y facilidades logísticas.

Factores de decisión de compra

Los principales factores son: precio, calidad, disponibilidad, comodidad, cercanía e impacto social.

Hipótesis preliminares

  • H1: La mayoría de las personas prefieren comprar productos de grandes cadenas antes que productos locales.
  • H2: Las personas que compran frecuentemente en mercados locales tienden a preferir productos de origen local.
  • H3: La calidad y frescura representan el principal factor de decisión de compra.
  • H4: Existe diferencia entre hombres y mujeres respecto a la preferencia de compra.
  • H5: Existe diferencia entre hombres y mujeres en la disposición a pagar más por productos locales..
  • H6: El gasto mensual en alimentos varía según el género.

Diseño de la encuesta

Población objetivo

Personas mayores de 18 años que participan en la compra de alimentos en Bogotá.

Consentimiento informado

La participación fue completamente voluntaria. Los datos se trataron de forma anónima y confidencial, con fines exclusivamente académicos.

Variables del estudio

Code
variables <- data.frame(
  Variable = c("Rango de edad","Género","Estrato socioeconómico",
               "Ocupación principal","Responsable de compras",
               "Preferencia de compra","Frecuencia compra local",
               "Lugar de compra","Factor de elección",
               "Tipo alimento local","Ventaja grandes cadenas",
               "Barrera compra local","Disposición a pagar más",
               "Gasto mensual"),
  Tipo = c("Cualitativa","Cualitativa","Cualitativa","Cualitativa",
           "Cualitativa","Cualitativa","Cualitativa","Cualitativa",
           "Cualitativa","Cualitativa","Cualitativa","Cualitativa",
           "Cualitativa","Cuantitativa"),
  Clasificacion = c("Ordinal","Nominal","Ordinal","Nominal",
                    "Nominal","Nominal","Ordinal","Nominal",
                    "Nominal","Nominal","Nominal","Nominal",
                    "Ordinal","Continua")
)
kable(variables,
      col.names = c("Variable","Tipo","Clasificación"),
      caption   = "Variables del estudio")
Variables del estudio
Variable Tipo Clasificación
Rango de edad Cualitativa Ordinal
Género Cualitativa Nominal
Estrato socioeconómico Cualitativa Ordinal
Ocupación principal Cualitativa Nominal
Responsable de compras Cualitativa Nominal
Preferencia de compra Cualitativa Nominal
Frecuencia compra local Cualitativa Ordinal
Lugar de compra Cualitativa Nominal
Factor de elección Cualitativa Nominal
Tipo alimento local Cualitativa Nominal
Ventaja grandes cadenas Cualitativa Nominal
Barrera compra local Cualitativa Nominal
Disposición a pagar más Cualitativa Ordinal
Gasto mensual Cuantitativa Continua

Importación y exploración de datos

Code
raw <- readxl::read_excel(
 "C:/Users/Usuario/OneDrive/Escritorio/Nueva carpeta/Encuesta sobre hábitos de consumo alimentario (2).xlsx"
)

datos <- raw %>%
  select(
    id           = 1,
    edad         = 9,
    genero       = 12,
    estrato      = 15,
    ocupacion    = 18,
    resp_compras = 21,
    preferencia  = 24,
    frec_local   = 27,
    lugar_compra = 30,
    factor_eleccion = 33,
    barrera      = 42,
    disposicion  = 45,
    gasto_texto  = 48
  )

glimpse(datos)
Rows: 54
Columns: 13
$ id              <dbl> 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16,…
$ edad            <chr> "18 a 34 años.", "18 a 34 años.", "18 a 34 años.", "35…
$ genero          <chr> "Masculino ", "Femenino ", "Masculino ", "Femenino ", …
$ estrato         <chr> "Estrato 4", "Estrato 3", "Estrato 3", "Estrato 4", "E…
$ ocupacion       <chr> "Estudiante.", "Estudiante.", "Estudiante.", "Hogar.",…
$ resp_compras    <chr> "Otra persona se encarga de las compras.", "Yo princip…
$ preferencia     <chr> "Consumo ambos por igual / No tengo preferencia.", "Pr…
$ frec_local      <chr> "Frecuentemente.", "Nunca o casi nunca.", "Ocacionalme…
$ lugar_compra    <chr> "Grandes supermercados o cadenas de hipermercados.", "…
$ factor_eleccion <chr> "La frescura y la calidad del producto", "El precio ba…
$ barrera         <chr> "Son difíciles de encontrar o los puntos de venta qued…
$ disposicion     <chr> "Ni de acuerdo ni en desacuerdo.", "En desacuerdo", "D…
$ gasto_texto     <chr> "2000000", "200000", "entre un millón y millón quinien…

Depuración de datos

Limpieza del gasto mensual

La pregunta de gasto fue texto libre, por lo que se requiere limpieza antes del análisis numérico.

Code
limpiar_gasto <- function(x) {
  x <- as.character(x)
  # Respuestas textuales con rango o descripción → valor aproximado
  x <- case_when(
    grepl("3 a 4 millones",    x, ignore.case = TRUE) ~ "3500000",
    grepl("millón y millón quinientos", x, ignore.case = TRUE) ~ "1250000",
    grepl("300 o 400 mil",     x, ignore.case = TRUE) ~ "350000",
    TRUE ~ x
  )
  # Quitar símbolos: $, puntos de miles, espacios, COP, ~, comillas, apostrofes
  x <- gsub("[$COP~'\"\\s]", "", x)
  x <- gsub("\\.", "", x)
  as.numeric(x)
}

datos <- datos %>%
  mutate(gasto_mensual = limpiar_gasto(gasto_texto))

# Verificamos valores faltantes tras la limpieza ☺
cat("Valores con gasto no parseable:", sum(is.na(datos$gasto_mensual)), "\n")
Valores con gasto no parseable: 0 
Code
cat("Rango del gasto: $", format(min(datos$gasto_mensual, na.rm=TRUE), big.mark=","),
    " – $", format(max(datos$gasto_mensual, na.rm=TRUE), big.mark=","), "\n")
Rango del gasto: $ 1e+05  – $ 3,500,000 

Valores faltantes

Code
faltantes <- colSums(is.na(datos[, names(datos) != "gasto_texto"]))
kable(
  data.frame(Variable = names(faltantes), Faltantes = faltantes),
  row.names = FALSE,
  caption   = "Valores faltantes por variable"
)
Valores faltantes por variable
Variable Faltantes
id 0
edad 0
genero 0
estrato 0
ocupacion 0
resp_compras 0
preferencia 0
frec_local 0
lugar_compra 0
factor_eleccion 0
barrera 0
disposicion 0
gasto_mensual 0

Recodificación de factores

Code
datos <- datos %>%
  mutate(
    genero      = factor(genero),
    preferencia = factor(preferencia),
    frec_local  = factor(frec_local,
                         levels = c("Siempre o casi siempre.",
                                    "Frecuentemente.",
                                    "Ocacionalmente.",
                                    "Nunca o casi nunca.")),
    disposicion = factor(disposicion,
                         levels = c("Totalmente de acuerdo.",
                                    "De acuerdo.",
                                    "Ni de acuerdo ni en desacuerdo.",
                                    "En desacuerdo",
                                    "Totalmente en desacuerdo")),
    # Variable binaria: prefiere local vs. no (para prueba de proporción)
    pref_local = ifelse(
      preferencia == "Prefiero productos elaborados localmente.",
      "Local", "Otro"
    ),
    # Variable binaria: disposición a pagar más
    dispuesto = ifelse(
      disposicion %in% c("Totalmente de acuerdo.", "De acuerdo."),
      "Sí", "No"
    )
  )

cat("n total:", nrow(datos), "\n")
n total: 54 

Estadística descriptiva

Distribución por género

Code
datos %>%
  count(genero) %>%
  mutate(pct = round(n / sum(n) * 100, 1)) %>%
  ggplot(aes(x = genero, y = n, fill = genero)) +
  geom_col(width = 0.5) +
  geom_text(aes(label = paste0(n, "\n(", pct, "%)")),
            vjust = -0.3, size = 3.5) +
  scale_fill_brewer(palette = "Set2") +
  labs(title = "Distribución por género",
       x = "Género", y = "Frecuencia") +
  theme_minimal() +
  theme(legend.position = "none")

Preferencia de compra

Code
datos %>%
  count(preferencia) %>%
  mutate(
    pct = round(n / sum(n) * 100, 1),
    preferencia = str_wrap(preferencia, width = 30)
  ) %>%
  ggplot(aes(x = reorder(preferencia, n), y = n, fill = preferencia)) +
  geom_col(width = 0.5) +
  geom_text(aes(label = paste0(n, " (", pct, "%)")),
            hjust = -0.1, size = 3.2) +
  coord_flip() +
  labs(title = "Preferencia de compra de alimentos",
       x = "", y = "Frecuencia") +
  theme_minimal() +
  theme(legend.position = "none") +
  ylim(0, 32)

Factor más importante en la elección

Code
datos %>%
  count(factor_eleccion) %>%
  mutate(
    pct = round(n / sum(n) * 100, 1),
    factor_eleccion = str_wrap(factor_eleccion, width = 35)
  ) %>%
  ggplot(aes(x = reorder(factor_eleccion, n), y = n, fill = factor_eleccion)) +
  geom_col() +
  geom_text(aes(label = paste0(n, " (", pct, "%)")),
            hjust = -0.1, size = 3.2) +
  coord_flip() +
  labs(title = "Factor principal en la decisión de compra",
       x = "", y = "Frecuencia") +
  theme_minimal() +
  theme(legend.position = "none") +
  ylim(0, 43)

Distribución del gasto mensual

Code
gasto_valido <- datos %>% filter(!is.na(gasto_mensual))

ggplot(gasto_valido, aes(x = gasto_mensual)) +
  geom_histogram(bins = 12, fill = "orange", color = "white") +
  geom_vline(xintercept = mean(gasto_valido$gasto_mensual),
             color = "red", linetype = "dashed", linewidth = 1) +
  scale_x_continuous(labels = scales::comma) +
  labs(title = "Distribución del gasto mensual en alimentos",
       subtitle = paste0("Media = $",
                         format(round(mean(gasto_valido$gasto_mensual)), big.mark=",")),
       x = "Gasto mensual (pesos)", y = "Frecuencia") +
  theme_minimal()

Gasto mensual por género

Code
gasto_valido %>%
  ggplot(aes(x = genero, y = gasto_mensual, fill = genero)) +
  geom_boxplot(alpha = 0.7) +
  scale_y_continuous(labels = scales::comma) +
  scale_fill_manual(values = c("steelblue", "tomato")) +
  labs(title = "Gasto mensual por género",
       x = "Género", y = "Gasto mensual (pesos)") +
  theme_minimal() +
  theme(legend.position = "none")

Disposición a pagar más por productos locales

Code
datos %>%
  count(disposicion) %>%
  filter(!is.na(disposicion)) %>%
  mutate(pct = round(n / sum(n) * 100, 1)) %>%
  ggplot(aes(x = disposicion, y = n, fill = disposicion)) +
  geom_col(width = 0.5) +
  geom_text(aes(label = paste0(n, "\n(", pct, "%)")),
            vjust = -0.3, size = 3.2) +
  labs(title = "Disposición a pagar más para apoyar productores locales",
       x = "", y = "Frecuencia") +
  theme_minimal() +
  theme(legend.position = "none",
        axis.text.x = element_text(size = 7))

Tabla resumen del gasto mensual

Code
resumen_gasto <- gasto_valido %>%
  group_by(genero) %>%
  summarise(
    n       = n(),
    Media   = round(mean(gasto_mensual)),
    Mediana = round(median(gasto_mensual)),
    DE      = round(sd(gasto_mensual)),
    Min     = min(gasto_mensual),
    Max     = max(gasto_mensual)
  )

kable(resumen_gasto,
      col.names = c("Género","n","Media","Mediana","Desv. Est.","Mínimo","Máximo"),
      caption   = "Estadísticas descriptivas del gasto mensual por género",
      format.args = list(big.mark = ","))
Estadísticas descriptivas del gasto mensual por género
Género n Media Mediana Desv. Est. Mínimo Máximo
Femenino  26 816,154 535,000 735,430 1e+05 3,500,000
Masculino  28 1,171,071 1,000,000 703,917 3e+05 3,000,000

Verificación de supuestos

Normalidad del gasto mensual (Shapiro-Wilk)

Code
prueba_sw <- shapiro.test(gasto_valido$gasto_mensual)
prueba_sw

    Shapiro-Wilk normality test

data:  gasto_valido$gasto_mensual
W = 0.85573, p-value = 1.158e-05
Code
qqnorm(gasto_valido$gasto_mensual,
       main = "Q-Q Plot — Gasto mensual")
qqline(gasto_valido$gasto_mensual, col = "red")

p = 0 < 0.05, se rechaza normalidad estricta. Sin embargo, dado que n ≥ 30, las pruebas t son robustas por el Teorema Central del Límite y sus resultados siguen siendo válidos.

Pruebas de hipótesis

Prueba 1 — Z para una proporción (H1)

¿La mayoría de las personas prefieren productos de grandes cadenas comerciales?

  • H₀: π = 0.50 (sin preferencia mayoritaria por cadenas)
  • H₁: π > 0.50 (mayoría prefiere cadenas comerciales)
  • α = 0.05
Code
n_total  <- nrow(datos)
n_cadena <- sum(datos$preferencia == "Prefiero productos de grandes cadenas comerciales.",
                na.rm = TRUE)

cat("Personas que prefieren cadenas:", n_cadena, "de", n_total, "\n")
Personas que prefieren cadenas: 15 de 54 
Code
cat("Proporción muestral:", round(n_cadena / n_total, 4), "\n\n")
Proporción muestral: 0.2778 
Code
prueba1 <- prop.test(
  x           = n_cadena,
  n           = n_total,
  p           = 0.5,
  alternative = "greater",
  correct     = FALSE
)
prueba1

    1-sample proportions test without continuity correction

data:  n_cadena out of n_total, null probability 0.5
X-squared = 10.667, df = 1, p-value = 0.9995
alternative hypothesis: true p is greater than 0.5
95 percent confidence interval:
 0.1899716 1.0000000
sample estimates:
        p 
0.2777778 

Decisión: p = 0.9995 > 0.05, no se rechaza H₀. No hay evidencia suficiente para afirmar que la mayoría de los encuestados prefiere exclusivamente las grandes cadenas comerciales.

Prueba 2 — Chi-cuadrado de independencia (H4)

¿Existe asociación entre el género y la preferencia de compra?

  • H₀: El género y la preferencia de compra son independientes
  • H₁: Existe asociación entre género y preferencia de compra
  • α = 0.05
Code
tabla_contingencia <- table(datos$genero, datos$preferencia)
kable(tabla_contingencia,
      caption = "Tabla de contingencia: Género vs Preferencia de compra")
Tabla de contingencia: Género vs Preferencia de compra
Consumo ambos por igual / No tengo preferencia. Prefiero productos de grandes cadenas comerciales. Prefiero productos elaborados localmente.
Femenino  10 7 9
Masculino  15 8 5
Code
prueba2 <- chisq.test(tabla_contingencia)
prueba2

    Pearson's Chi-squared test

data:  tabla_contingencia
X-squared = 2.1384, df = 2, p-value = 0.3433

Decisión: p = 0.3433 > 0.05, no se rechaza H₀. No hay evidencia de asociación entre el género y la preferencia de compra; ambos géneros presentan patrones de consumo similares.

Prueba 3 — t para una media (H6)

¿El gasto mensual promedio difiere de $500,000 (referencia típica de gasto alimentario en Bogotá)?

  • H₀: μ = 500,000
  • H₁: μ ≠ 500,000
  • α = 0.05
Code
prueba3 <- t.test(
  gasto_valido$gasto_mensual,
  mu          = 500000,
  alternative = "two.sided"
)
prueba3

    One Sample t-test

data:  gasto_valido$gasto_mensual
t = 5.0038, df = 53, p-value = 6.553e-06
alternative hypothesis: true mean is not equal to 5e+05
95 percent confidence interval:
  799687.3 1200683.0
sample estimates:
mean of x 
  1000185 

Decisión: p = 0 < 0.05, se rechaza H₀. El gasto mensual promedio de la muestra es estadísticamente diferente de $500,000.

Prueba 4 — t para dos medias independientes (H6)

¿El gasto mensual en alimentos varía según el género?

  • H₀: μ_Masculino = μ_Femenino
  • H₁: μ_Masculino ≠ μ_Femenino
  • α = 0.05
Code
prueba4 <- t.test(
  gasto_mensual ~ genero,
  data        = gasto_valido,
  alternative = "two.sided"
)
prueba4

    Welch Two Sample t-test

data:  gasto_mensual by genero
t = -1.8089, df = 51.271, p-value = 0.07634
alternative hypothesis: true difference in means between group Femenino  and group Masculino  is not equal to 0
95 percent confidence interval:
 -748776.03   38940.86
sample estimates:
 mean in group Femenino  mean in group Masculino  
                816153.8                1171071.4 

Decisión: p = 0.0763 > 0.05, no se rechaza H₀. No hay evidencia de que el gasto mensual promedio difiera entre géneros.

Prueba 5 — F para igualdad de varianzas

¿La variabilidad del gasto mensual es igual entre hombres y mujeres?

  • H₀: σ²_Masculino = σ²_Femenino
  • H₁: σ²_Masculino ≠ σ²_Femenino
  • α = 0.05
Code
prueba5 <- var.test(
  gasto_mensual ~ genero,
  data = gasto_valido
)
prueba5

    F test to compare two variances

data:  gasto_mensual by genero
F = 1.0915, num df = 25, denom df = 27, p-value = 0.8211
alternative hypothesis: true ratio of variances is not equal to 1
95 percent confidence interval:
 0.5001162 2.4110681
sample estimates:
ratio of variances 
           1.09154 

Decisión: p = 0.8211 > 0.05, no se rechaza H₀. No hay evidencia de diferencia en la variabilidad del gasto entre hombres y mujeres.

Prueba 6 — Z para dos proporciones (H5)

¿La proporción de personas dispuestas a pagar más por productos locales difiere entre hombres y mujeres?

  • H₀: π_Masculino = π_Femenino
  • H₁: π_Masculino ≠ π_Femenino
  • α = 0.05
Code
# Prueba 6 — Diferencia de proporciones

datos_disp <- datos %>%
  filter(!is.na(dispuesto),
         !is.na(genero))

# Ver cuántas categorías de género existen
table(datos_disp$genero)

 Femenino  Masculino  
        26         28 
Code
# Tomar automáticamente las dos primeras categorías encontradas
niveles_genero <- unique(datos_disp$genero)

grupo1 <- datos_disp %>%
  filter(genero == niveles_genero[1])

grupo2 <- datos_disp %>%
  filter(genero == niveles_genero[2])

x1 <- sum(grupo1$dispuesto == "Sí", na.rm = TRUE)
x2 <- sum(grupo2$dispuesto == "Sí", na.rm = TRUE)

n1 <- nrow(grupo1)
n2 <- nrow(grupo2)

cat("Grupo 1:", niveles_genero[1], "\n")
Grupo 1: 2 
Code
cat("Grupo 2:", niveles_genero[2], "\n")
Grupo 2: 1 
Code
cat("n1 =", n1, "\n")
n1 = 28 
Code
cat("n2 =", n2, "\n")
n2 = 26 
Code
if(n1 > 0 & n2 > 0){

  prueba6 <- prop.test(
    x = c(x1, x2),
    n = c(n1, n2),
    alternative = "two.sided",
    correct = FALSE
  )
  prueba6

} else {

  cat("No existen suficientes observaciones para realizar la prueba.\n")

}

    2-sample test for equality of proportions without continuity correction

data:  c(x1, x2) out of c(n1, n2)
X-squared = 0.59341, df = 1, p-value = 0.4411
alternative hypothesis: two.sided
95 percent confidence interval:
 -0.1520352  0.3498374
sample estimates:
   prop 1    prop 2 
0.7142857 0.6153846 

Decisión: p = 0.4411 > 0.05, no se rechaza H₀. No hay diferencia estadísticamente significativa en la disposición a pagar más entre géneros.

Intervalos de confianza

IC para la proporción que prefiere productos locales

Code
n_local <- sum(datos$preferencia == "Prefiero productos elaborados localmente.",
               na.rm = TRUE)

resultado <- prop.test(
  x          = n_local,
  n          = n_total,
  conf.level = 0.95
)

cat("Proporción muestral:", round(n_local / n_total, 4), "\n")
Proporción muestral: 0.2593 
Code
cat("IC 95%: (", round(resultado$conf.int[[1]], 4), ",",
                 round(resultado$conf.int[[2]], 4), ")\n")
IC 95%: ( 0.1538 , 0.3991 )
Code
ic1_lower <- round(resultado$conf.int[1]*100, 1)
ic1_upper <- round(resultado$conf.int[2]*100, 1)

Interpretación: Con un nivel de confianza del 95%, la proporción real de consumidores que prefieren exclusivamente productos locales se encuentra entre 15.4% y 39.9%.

IC para la media del gasto mensual

Code
resultado_media <- t.test(
  gasto_valido$gasto_mensual,
  conf.level = 0.95
)

cat("Media muestral: $", format(round(mean(gasto_valido$gasto_mensual)), big.mark=","), "\n")
Media muestral: $ 1,000,185 
Code
cat("IC 95%: ($", format(round(resultado_media$conf.int[[1]]), big.mark=","),
    ", $", format(round(resultado_media$conf.int[[2]]), big.mark=","), ")\n")
IC 95%: ($ 799,687 , $ 1,200,683 )
Code
ic2_lower <- format(round(resultado_media$conf.int[1]), big.mark=",")
ic2_upper <- format(round(resultado_media$conf.int[2]), big.mark=",")

Interpretación: Con un nivel de confianza del 95%, el gasto mensual promedio en alimentos de los consumidores bogotanos encuestados se encuentra entre $799,687 y $1,200,683 pesos. ## IC para la diferencia de medias (gasto por género)

Code
resultado_dif <- t.test(
  gasto_mensual ~ genero,
  data       = gasto_valido,
  conf.level = 0.95
)

cat("IC 95% para la diferencia (Femenino - Masculino):\n")
IC 95% para la diferencia (Femenino - Masculino):
Code
cat("($", format(round(resultado_dif$conf.int[[1]]), big.mark=","),
    ", $", format(round(resultado_dif$conf.int[[2]]), big.mark=","), ")\n")
($ -748,776 , $ 38,941 )
Code
ic3_lower <- format(round(resultado_dif$conf.int[1]), big.mark=",")
ic3_upper <- format(round(resultado_dif$conf.int[2]), big.mark=",")

Interpretación: Con un 95% de confianza, la diferencia en el gasto promedio entre mujeres y hombres se encuentra entre $-748,776 y $38,941. El intervalo contiene el 0, lo que indica que no hay diferencia estadísticamente significativa en el gasto entre géneros.

IC para la diferencia de proporciones (disposición a pagar más)

Code
resultado_prop2 <- prop.test(
  x = c(x1, x2),
  n = c(n1, n2),
  conf.level = 0.95,
  correct = FALSE
)

cat("IC 95% para la diferencia (Masculino - Femenino):\n")
IC 95% para la diferencia (Masculino - Femenino):
Code
cat("(", round(resultado_prop2$conf.int[[1]], 4), ",",
        round(resultado_prop2$conf.int[[2]], 4), ")\n")
( -0.152 , 0.3498 )

Interpretación: Con un 95% de confianza, la diferencia en la proporción de disposición a pagar más por productos locales entre hombres y mujeres se encuentra entre -15.2% y 35%. El intervalo contiene el 0, indicando que no hay diferencia significativa por género.

Interpretación de resultados

Code
# Reutilizar los objetos ya calculados en las pruebas anteriores
p1 <- prueba1$p.value
p2 <- prueba2$p.value
p3 <- prueba3$p.value
p4 <- prueba4$p.value
p5 <- prueba5$p.value
p6 <- prueba6$p.value

resumen <- data.frame(
  Hipotesis = c("H1","H4","H6 (una media)","H6 (dos medias)","Varianzas","H5"),
  Prueba    = c("Z proporción","Chi-cuadrado","t una media",
                "t dos medias","F varianzas","Z dos proporciones"),
  p_valor   = round(c(p1, p2, p3, p4, p5, p6), 4),
  Decision  = ifelse(c(p1,p2,p3,p4,p5,p6) < 0.05,
                     "Rechazar H₀","No rechazar H₀")
)

kable(resumen,
      col.names = c("Hipótesis","Prueba","p-valor","Decisión (α = 0.05)"),
      caption   = "Resumen de pruebas de hipótesis")
Resumen de pruebas de hipótesis
Hipótesis Prueba p-valor Decisión (α = 0.05)
H1 Z proporción 0.9995 No rechazar H₀
H4 Chi-cuadrado 0.3433 No rechazar H₀
H6 (una media) t una media 0.0000 Rechazar H₀
H6 (dos medias) t dos medias 0.0763 No rechazar H₀
Varianzas F varianzas 0.8211 No rechazar H₀
H5 Z dos proporciones 0.4411 No rechazar H₀

Conclusiones

Con base en el análisis estadístico realizado sobre 54 consumidores bogotanos, se concluye:

  1. Preferencia de compra: El 46.3% de los encuestados no tiene preferencia definida entre productos locales y cadenas comerciales. Solo el 27.8% prefiere exclusivamente cadenas, lo que no constituye mayoría (H1 no rechazada).

  2. Género y preferencia: No se encontró asociación estadísticamente significativa entre el género y la preferencia de compra (H4). Ambos géneros presentan patrones de consumo similares.

  3. Factor de elección: El factor más importante para los encuestados fue “La frescura y la calidad del producto”, seleccionado por el 63% de la muestra. Este resultado permite evaluar la hipótesis H3 según la importancia otorgada por los consumidores a los distintos criterios de compra.

  4. Gasto mensual: El gasto mensual promedio estimado fue $1,000,185, reflejo de la diversidad de estratos socioeconómicos en la muestra (estratos 1 a 5).

  5. Disposición a pagar más: El 66.7% de los encuestados está de acuerdo o totalmente de acuerdo con pagar más para apoyar a productores locales, lo que evidencia una valoración positiva de los productos locales a nivel general.

  6. Barreras de compra local: Las principales barreras identificadas son la dificultad para encontrar los puntos de venta, la falta de información y la menor variedad disponible, aspectos que podrían abordarse con políticas de distribución y comunicación.

Referencias

  • Banco de la República de Colombia. (2024). Informe de la Junta Directiva al Congreso de la República.
  • DANE. (2024). Encuesta Nacional de Presupuestos de los Hogares. Bogotá.
  • Kotler, P., & Armstrong, G. (2017). Principles of Marketing (17.ª ed.). Pearson.
  • Secretaría Distrital de Desarrollo Económico. (2023). Mercados Campesinos de Bogotá.
  • Walpole, R., Myers, R., & Myers, S. (2012). Probabilidad y Estadística para Ingeniería y Ciencias (9.ª ed.). Pearson.