Objetivo
Aplicar el lenguaje estadístico R para analítica de datos.
Tema de la actividad
Analítica de datos (utilizando RStudio + highcharter)
Descripción
Este taller calificado consiste en realizar un informe estadístico utilizando alguno de los siguientes conjuntos de datos presentados a continuación.
data1=read.csv(url("https://raw.githubusercontent.com/geovannychoez/prueba/master/winequality-white.csv"), header = TRUE,sep = ";")
library(ggplot2) ## grafcias profecionales
## Warning: package 'ggplot2' was built under R version 4.3.3
library(dygraphs) ## graficas interactivas
## Warning: package 'dygraphs' was built under R version 4.3.3
library(quantmod) ## graficos y seleccion de datos
## Warning: package 'quantmod' was built under R version 4.3.3
## Loading required package: xts
## Warning: package 'xts' was built under R version 4.3.3
## Loading required package: zoo
## Warning: package 'zoo' was built under R version 4.3.3
##
## Attaching package: 'zoo'
## The following objects are masked from 'package:base':
##
## as.Date, as.Date.numeric
## Loading required package: TTR
## Warning: package 'TTR' was built under R version 4.3.3
## Registered S3 method overwritten by 'quantmod':
## method from
## as.zoo.data.frame zoo
library(corrplot) ##graficos de correlacion
## Warning: package 'corrplot' was built under R version 4.3.3
## corrplot 0.92 loaded
library(highcharter)
## Warning: package 'highcharter' was built under R version 4.3.3
easypackages::libraries(c("dplyr", "highcharter"))
## Loading required package: dplyr
## Warning: package 'dplyr' was built under R version 4.3.3
##
## ######################### Warning from 'xts' package ##########################
## # #
## # The dplyr lag() function breaks how base R's lag() function is supposed to #
## # work, which breaks lag(my_xts). Calls to lag(my_xts) that you type or #
## # source() into this session won't work correctly. #
## # #
## # Use stats::lag() to make sure you're not using dplyr::lag(), or you can add #
## # conflictRules('dplyr', exclude = 'lag') to your .Rprofile to stop #
## # dplyr from breaking base R's lag() function. #
## # #
## # Code in packages is not affected. It's protected by R's namespace mechanism #
## # Set `options(xts.warn_dplyr_breaks_lag = FALSE)` to suppress this warning. #
## # #
## ###############################################################################
##
## Attaching package: 'dplyr'
## The following objects are masked from 'package:xts':
##
## first, last
## The following objects are masked from 'package:stats':
##
## filter, lag
## The following objects are masked from 'package:base':
##
## intersect, setdiff, setequal, union
## All packages loaded successfully
Utilizando la librería highcharter
En vista que el data set Quality Wine – WHITE no cuenta con variable cualitativa exactamente, pero si una entera (INT) que clasifica la CALIDAD DE VINOS por puntos se tomara en cuenta.
str(data1)
## 'data.frame': 4898 obs. of 12 variables:
## $ fixed.acidity : num 7 6.3 8.1 7.2 7.2 8.1 6.2 7 6.3 8.1 ...
## $ volatile.acidity : num 0.27 0.3 0.28 0.23 0.23 0.28 0.32 0.27 0.3 0.22 ...
## $ citric.acid : num 0.36 0.34 0.4 0.32 0.32 0.4 0.16 0.36 0.34 0.43 ...
## $ residual.sugar : num 20.7 1.6 6.9 8.5 8.5 6.9 7 20.7 1.6 1.5 ...
## $ chlorides : num 0.045 0.049 0.05 0.058 0.058 0.05 0.045 0.045 0.049 0.044 ...
## $ free.sulfur.dioxide : num 45 14 30 47 47 30 30 45 14 28 ...
## $ total.sulfur.dioxide: num 170 132 97 186 186 97 136 170 132 129 ...
## $ density : num 1.001 0.994 0.995 0.996 0.996 ...
## $ pH : num 3 3.3 3.26 3.19 3.19 3.26 3.18 3 3.3 3.22 ...
## $ sulphates : num 0.45 0.49 0.44 0.4 0.4 0.44 0.47 0.45 0.49 0.45 ...
## $ alcohol : num 8.8 9.5 10.1 9.9 9.9 10.1 9.6 8.8 9.5 11 ...
## $ quality : int 6 6 6 6 6 6 6 6 6 6 ...
GRAFICO 1
hchart(data1, "column", hcaes(x = quality, y = pH , group = quality)) %>% hc_add_theme(hc_theme_darkunica())
LA CALIDAD DE VINO SE DIVIDE EN 10 PUNTOS SEGUN [Cortez et al., 2009] ESPECIFICA QUE POR ENCIMA DE LOS 6 PTS SE CLASIFICA UN EN UN BUEN VINO, COMO SE PUEDE OBSERVAR EXISTE DOS GRUPOS DE VINOS QUE CUMPLEN LA CALIDAD Y TIENEN UN PH DE 3,82 Y 3.57 PARA LLEGAR A SU PUNTO DE EXCELENCIA
POR LO TANTO SE PUEDE DECIR QUE :
sum(data1$quality < 6) #VINOS DE BAJA CALIDAD
## [1] 1640
sum(data1$quality > 6) #VINOS DE BUENA CALIDAD
## [1] 1060
sum(data1$quality == 6)#VINOS COMERCIALES DE CALIDAD MEDIA
## [1] 2198
EXITEN 1060 VINOS DE BUENA CALIDAD CON UN PH DE ENTRE LOS 3,34 HASTA
3,82
MIENTRAS QUE HAY 1640 VINOS DE CALIDAD BAJA CON UN PH DE ENTRE LOS 3,15
hasta 3,77 TAMBIEN UN VINO AL CUAL SE LE CATALOGA COMO COMERCIAL O
CALIDAD MEDIA Y TIENE UN PH DE ENTRE LOS 3.26 HASTA 3,8.
GRAFICO 2
hchart(data1, "column", hcaes(x = quality, y = residual.sugar , group = quality)) %>% hc_add_theme(hc_theme_darkunica())
TAMBIEN SE PUEDE INFERIR QUE LOS VINOS COMERCIALES O DE CALIDAD MEDIA SON LOS QUE MAS AZUCAR RESIDUAL TIENEN CON UN 0,8 HASTA 65,8 gramos por litro MIENTRAS QUE LOS DE CALIDAD ALTA PUEDEN CONTENER AZUCAR RESIDUAL DE ENTRE 1.1 HASTA LOS 19.25 gramos por litro
OTROS FACTORES QUE TAMBIEN NOS PUEDAN AYUDAR A IDENTIFICAR ES SABER LA RELACION QUE EXISTE EN LA DENSIDAD DEL VINO Y EL ALCOHOL COLOCADO AGRUPADO POR LAS DIFERENTES CALIDADES
GRAFICO 1
hchart(data1, "scatter", hcaes(x = density, y = alcohol, group = quality)) %>%
hc_title(text = "Dispersión alcohol") %>%
hc_add_theme(hc_theme_economist())
Como se pudo observar existe una relacion negativa es decir: A medida que aumenta el grado de alcohol , la densidad va disminuyendo.
cor(data1$density,data1$alcohol)
## [1] -0.7801376
teoricamente el valor de la correlacion entre las variable es de -0.7801376 es decir: los valores de una variable tienden a incrementarse mientras que los valores de la otra variable descienden.
GRAFICO 2
hchart(data1, "scatter", hcaes(x = density, y = residual.sugar, group = quality)) %>%
hc_title(text = "Dispersión azucar") %>%
hc_add_theme(hc_theme_economist())
Como se pudo observar existe una relacion positiva alta es decir: A medida que aumenta el el azucar residual , la densidad del vino tambien aumenta.
cor(data1$density,data1$residual.sugar)
## [1] 0.8389665
teoricamente el valor de la correlacion entre las variable es de 0.8389665 esto quiere decir si una variable se incrementa , la otra tambien y viseversa.por lo tanto se dice que si existe una relacion entre las variables pero no se puede decir que influya para eso existe otros estudios como la regresion.
CABE RECALCAL QUE EL ESTUDIO SE REQUERIA DOS VARIABLES CUALITATIVAS Y EL LA BASE DE DATOS CONTABA SOLO CON UNA
por lo tanto para la demostracion y cumplimiento de las rubricas del trabajo se recategorizara una variable como demostracion.
summary(data1$pH)# ver minimo maximo para recategorizar
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 2.720 3.090 3.180 3.188 3.280 3.820
divs <- c(-Inf, 3 ,3.3,Inf) #rango
nombre<-c("extremadamente acido","acido","moderadamente acido") #nombre de la recategorizacion de datos a cualitativos.
data1$pH.recat <- cut(data1$pH , breaks = divs , labels = nombre)#almacenar en la misma base de datos la variable recategorizada
hchart(data1, "column", hcaes(x = quality, y = pH , group = pH.recat)) %>% hc_add_theme(hc_theme_darkunica())
se ha recategorizado la variable PH en tres categorias de la cual se puede inferir que:
la mayoria de los vinos de calidad son moderadamente acidos para ser de excelencia.
data2<-data.frame(data1$density,data1$residual.sugar,data1$alcohol,data1$pH)
Se filtran las variables a utilizar y se almacenan en un datafreme para su facil manipulacion
plot(data2[,1:4],col=c("black"))
se corrobora todo lo antes mencionado las variables densidad y residual tienen pendiente positiva
corrplot(cor(data2[,1:4]))
el mismo caso para la correlacion entre variables densidad vs azucar residual y densidad vs alcohol
parte del analisis es un histograma para tener una idea de la distribucion de datos:
hist(data1$quality)
se vizualiza que se asemeja a una campana de gauss por lo que se podria asumir que sigue distribucion normal la calidad de vino pero existen otros tes que lo podria asegurar.
CON RESPECTO AL GRAFICO 1 Y 2 DEL DIAGRAMA BIVARIANTE DISPERCION
SE CONCLUYE QUE EL ALCOHOL NO ES UN FACTOR EN LA DENSIDAD DEL VINO MIENTRAS QUE EL AZUCAR SI CABE RECALCAR QUE SEGUN ESTUDIOS LA EXCELENCIA DEL VINO SE DA POR SU ESPESOR , DENSIDAD Y AÑEJO.
CON RESPECTO AL GRAFICO 2 DEL GRAFICO MULTIVARIANTE CORRELACION
SE CONCLUYE QUE LA DENSIDAD Y AZUCAR RESIDUAL TIENEN UNA RELACION FUERTE ES DECIR SI AUMENTA EL AZUCAR LA DENSIDAD DEL VINO TAMBIEN AUMENTARA Y VISEVERSA MIENTRAS QUE CON EL ALCOHOL ES UN CASO DISTINTO SI EL ALCOHOL AUMENTA LA DENSIDAD DEL VINO DISMINUYE.