A continuacion se presenta el codigo usado para la presente actividad. Se siguio la siguiente lógica para construir el codigo:
library(readxl)
Encuesta_Coca_cola<- read_excel("Encuesta Coca-cola .xlsx")
attach(Encuesta_Coca_cola)
colnames(Encuesta_Coca_cola)= c("fecha","sexo","Edad","0","1000","1500","2000","2500","3000","3500","4000","5000")
attach(Encuesta_Coca_cola)
## The following object is masked from Encuesta_Coca_cola (pos = 3):
##
## Edad
library(tidyr)
long_coca=gather(Encuesta_Coca_cola, key="Precio", value="Cantidad", "0","1000","1500","2000","2500","3000","3500","4000","5000")
attach(long_coca)
## The following objects are masked from Encuesta_Coca_cola (pos = 4):
##
## Edad, fecha, sexo
## The following object is masked from Encuesta_Coca_cola (pos = 5):
##
## Edad
long_coca$Precio=as.numeric(long_coca$Precio)
long_coca$Cantidad=as.numeric(long_coca$Cantidad)
attach(long_coca)
## The following objects are masked from long_coca (pos = 3):
##
## Cantidad, Edad, fecha, Precio, sexo
## The following objects are masked from Encuesta_Coca_cola (pos = 5):
##
## Edad, fecha, sexo
## The following object is masked from Encuesta_Coca_cola (pos = 6):
##
## Edad
reg_cocacola= lm(Cantidad~ Precio+sexo+Edad, data=long_coca)
cor(long_coca$Precio,long_coca$Cantidad)
## [1] -0.3016711
Al correr el codigo observamos los coeficientes de la función
reg_cocacola
##
## Call:
## lm(formula = Cantidad ~ Precio + sexo + Edad, data = long_coca)
##
## Coefficients:
## (Intercept) Precio sexoMujer Edad
## 30.997507 -0.005245 -3.453866 -0.029576
Se puede organizar la formula para que se vea como:
Cantidad= 30.997 - 0.005(Precio) - 3.453(Si es mujer es 1 si es hombre es 0) - 0.029 (Edad)
Partimos de la formmula anterior para la interpretación:
Cantidad= 30.997 - 0.005(Precio) - 3.453(Si es mujer es 1 si es hombre es 0) - 0.029 (Edad)
AcĆ” se puede decir lo siguiente:
El intercepto es 30.997507 que significa que para las condiciones dadas, si las variables son 0 entonces una persona se toma 30.997507 coca colas en un mes. Esto quiere decir que la Edad es 0 y el sexo es masculino.
El āβā de la variable āPrecioā es -0.005245, se puede denotar en el signo que tienen una relacion inversa, es decir, que cuando el precio aumenta la cantidad disminuye y viceversa, en este caso, por cada peso adicional en el precio la cantidad que se toma el individuo disminuye en 0.005245. En un escenario mĆ”s realista se puede decir que si se aumenta el precio en 1000 pesos la cantidad de cocacolas que toma el individuo disminuye en 5.245.
El āβā de la variable āsexoā es -3.453866 lo que indica igualmente una relación inversa entre la variable dependiente y el sexo. En este caso el modelo toma en la variable dicotomica al hombre como 0 y la mujer como 1 lo cual se puede traducir a que si el cliente es una mujer la cantidad de cocacolas que se tomaria, manteniendo las demas variables constantes, diminuye en 3.453866 coca colas.
El āβā de la variable āEdadā es -0.029576 que al igual que las anteriores tiene una relación inversa con la cantidad. Esto se interpreta teniendo que por cada aƱo adicional que tenga la persona la cantidad de cocacolas que toma, teniendo las demas variables constantes, diminuye en 0.029576.
Con respecto a la elasticidad nos da -3.401911e-05 lo cual indica que es menor a 1 lo que significa que es inelastica. Interpretandolo se puede decir que es necesario una gran variacion del precio para poder cambiar 1 de cantidad.
Elasticidad= -0.005245 * (mean(long_coca$Cantidad)/mean(long_coca$Precio))
Elasticidad
## [1] -3.401911e-05
La correlación nos indica que direccion tiene la relación entre dos o mÔs variables, si el
cor(long_coca$Precio,long_coca$Cantidad)
## [1] -0.3016711
library(ggplot2)
library(corrplot)
## corrplot 0.95 loaded
library(dplyr)
##
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
##
## filter, lag
## The following objects are masked from 'package:base':
##
## intersect, setdiff, setequal, union
# Seleccionar solo variables numƩricas
num_vars <- long_coca %>%
select_if(is.numeric)
# Calcular la matriz de correlaciones
cor_matrix <- cor(num_vars, use = "complete.obs")
# Visualizar con corrplot
corrplot(cor_matrix, method = "color", type = "upper",
addCoef.col = "black", # mostrar valores
tl.col = "black", tl.srt = 45, # etiquetas
col = colorRampPalette(c("blue", "white", "red"))(200),
title = "Matriz de Correlación (variables numéricas)",
mar = c(0,0,2,0))
corrplot::corrplot(cor(long_coca[,-c(1,2)]))
plot(long_coca$Cantidad~long_coca$Precio)
abline(reg_cocacola)
## Warning in abline(reg_cocacola): only using the first two of 4 regression
## coefficients
knitr::include_graphics("encuesta imagen.jpeg")