Con la gran base de datos de amazon, se selecionarán los datos de los planes que tienen los hombres y mujeres, ya sean anuales o mensuales
##Hipótesis 1- Descubrir que teniendo datos similares, hay una mayor cantidad de personas que tienen plan anual (ya que probablemente es más cómodo o más barato) que un plan mensual.
base_de_datos<- read.csv(file ="data_set_amazon.csv",
stringsAsFactors = TRUE)
tabla <- base_de_datos%>%
group_by(Subscription.Plan)%>%
count("Monthly", "Anual")
ggplot(tabla, aes( x = Subscription.Plan, y = n, fill = Subscription.Plan)) +
geom_bar(stat = "identity", color = "black", size = 0.3) +
labs( tilte = "Plan de suscripción",
x = "Suscripción",
y = "Numero de clientes")+
theme_bw()
## Warning: Using `size` aesthetic for lines was deprecated in ggplot2 3.4.0.
## ℹ Please use `linewidth` instead.
## This warning is displayed once every 8 hours.
## Call `lifecycle::last_lifecycle_warnings()` to see where this warning was
## generated.
##Descripción tabla En la tabla anterior, se muestra que el plan anual
es más utilizado que el plan mensual.
summary(tabla)
## Subscription.Plan "Monthly" "Anual" n
## Annual :1 Length:2 Length:2 Min. :1229
## Monthly:1 Class :character Class :character 1st Qu.:1240
## Mode :character Mode :character Median :1250
## Mean :1250
## 3rd Qu.:1260
## Max. :1271
genero_hombre_mes <- base_de_datos %>%
filter(Gender == "Male", Subscription.Plan== "Monthly") %>%
select(Subscription.Plan, Gender)%>%
mutate(numero_de_personas=1:610)%>%
select(numero_de_personas, everything())
##Hombres Con esto, podemos ver que hay 610 hombres que tienen el plan mensual.
genero_mujer_mes <- base_de_datos %>%
filter(Gender == "Female", Subscription.Plan== "Monthly") %>%
select(Subscription.Plan, Gender)%>%
mutate(numero_de_personas=1:619)%>%
select(numero_de_personas, everything())
##Mujeres Con esto, podemos ver que hay 619 mujeres que usan el plan mensual
suscripcion <- base_de_datos %>%
select(User.ID, Gender, Subscription.Plan) %>%
mutate(suscripcion_numerico = recode_factor(Subscription.Plan,
"Annual" = 1,
"Monthly" = 0),
genero_numerico = recode_factor(Gender,
"Male" = 1,
"Female" = 0)) %>%
count(genero_numerico, suscripcion_numerico )
ggplot( suscripcion, aes( x = suscripcion_numerico, y = n )) +
geom_bar( stat = "identity", color = "black", size = 0.7) +
labs (tilte = "tipos de suscripcion de las personas",
x = "Forma de susbcripcion",
y = "numero de personas") +
theme_classic() +
scale_fill_brewer(palette = "Accent")
ggplot(suscripcion, aes(x = suscripcion_numerico, y = genero_numerico)) +
geom_point(alpha = 0.5) +
labs(title = "Personas con suscripcion anual y mensual",
x = "Tipo de suscripcion",
y = "Numero de personas") +
theme_classic()
# Verificar la estructura inicial de los datos
str(suscripcion)
## 'data.frame': 4 obs. of 3 variables:
## $ genero_numerico : Factor w/ 2 levels "1","0": 1 1 2 2
## $ suscripcion_numerico: Factor w/ 2 levels "1","0": 1 2 1 2
## $ n : int 650 610 621 619
# Convertir factores a numéricos
suscripcion$genero_numerico <- as.numeric(as.character(suscripcion$genero_numerico))
suscripcion$suscripcion_numerico <- as.numeric(as.character(suscripcion$suscripcion_numerico))
# Verificar si hay valores no numéricos o NA
any(is.na(suscripcion$suscripcion_numerico))
## [1] FALSE
any(is.na(suscripcion$genero_numerico))
## [1] FALSE
# Crear el scatterplot
library(car)
car::scatterplot(genero_numerico ~ suscripcion_numerico,
data = suscripcion,
smooth = FALSE)
car::scatterplot(genero_numerico ~ suscripcion_numerico,
data = suscripcion,
smooth = FALSE)
##Conclusión: Podemos notar que se cumplen ambas hipótesis, mediante un filtro se obtuvieron los datos de las personas que utilizan plan mensual y anual, obteniendo como resultado que el plan anual es más utilizado.
Posteriormente, se realizó una comparativa entre ambos géneros, esto con el fin de descubrir quienes utulizaban más el plan mensual, arrojando a las mujeres (por poco) como las principales consumidoras de este tipo de suscripción.