Análisis exploratorio de la base de datos de Vinos

La base de datos de vinos describe el comportamiento 12 atributos y de 1599 registros. Se descargo del control 1 del curso “Statistic Programming for business analytic”.

Importancia de la base de datos

La base de datos esta en formato csv y fue importado al RStudio. Adicionalmente se realizó un resumen de cada variable

BDWine <- read.csv("C:/Users/josep/OneDrive/Diplomado BI/Statistics Programming for business analytics/Control 1/control 1 nuevo/winequality-red.csv")
summary(BDWine)
##  fixed.acidity   volatile.acidity  citric.acid    residual.sugar  
##  Min.   : 4.60   Min.   :0.1200   Min.   :0.000   Min.   : 0.900  
##  1st Qu.: 7.10   1st Qu.:0.3900   1st Qu.:0.090   1st Qu.: 1.900  
##  Median : 7.90   Median :0.5200   Median :0.260   Median : 2.200  
##  Mean   : 8.32   Mean   :0.5278   Mean   :0.271   Mean   : 2.539  
##  3rd Qu.: 9.20   3rd Qu.:0.6400   3rd Qu.:0.420   3rd Qu.: 2.600  
##  Max.   :15.90   Max.   :1.5800   Max.   :1.000   Max.   :15.500  
##    chlorides       free.sulfur.dioxide total.sulfur.dioxide    density      
##  Min.   :0.01200   Min.   : 1.00       Min.   :  6.00       Min.   :0.9901  
##  1st Qu.:0.07000   1st Qu.: 7.00       1st Qu.: 22.00       1st Qu.:0.9956  
##  Median :0.07900   Median :14.00       Median : 38.00       Median :0.9968  
##  Mean   :0.08747   Mean   :15.87       Mean   : 46.47       Mean   :0.9967  
##  3rd Qu.:0.09000   3rd Qu.:21.00       3rd Qu.: 62.00       3rd Qu.:0.9978  
##  Max.   :0.61100   Max.   :72.00       Max.   :289.00       Max.   :1.0037  
##        pH          sulphates         alcohol         quality     
##  Min.   :2.740   Min.   :0.3300   Min.   : 8.40   Min.   :3.000  
##  1st Qu.:3.210   1st Qu.:0.5500   1st Qu.: 9.50   1st Qu.:5.000  
##  Median :3.310   Median :0.6200   Median :10.20   Median :6.000  
##  Mean   :3.311   Mean   :0.6581   Mean   :10.42   Mean   :5.636  
##  3rd Qu.:3.400   3rd Qu.:0.7300   3rd Qu.:11.10   3rd Qu.:6.000  
##  Max.   :4.010   Max.   :2.0000   Max.   :14.90   Max.   :8.000

Gráficos de las varibales

A continuación se realiza una función para poder evaluar cada atributo de varibales e identificar si es numérico o tipo carácter. A los datos numéricos se les reportara con un histograma y en graficos de Boxplot.

dim(BDWine)
## [1] 1599   12
names(BDWine)
##  [1] "fixed.acidity"        "volatile.acidity"     "citric.acid"         
##  [4] "residual.sugar"       "chlorides"            "free.sulfur.dioxide" 
##  [7] "total.sulfur.dioxide" "density"              "pH"                  
## [10] "sulphates"            "alcohol"              "quality"
colnames(BDWine)
##  [1] "fixed.acidity"        "volatile.acidity"     "citric.acid"         
##  [4] "residual.sugar"       "chlorides"            "free.sulfur.dioxide" 
##  [7] "total.sulfur.dioxide" "density"              "pH"                  
## [10] "sulphates"            "alcohol"              "quality"
columna = dim(BDWine)[2]
columna
## [1] 12
str(BDWine)
## 'data.frame':    1599 obs. of  12 variables:
##  $ fixed.acidity       : num  7.4 7.8 7.8 11.2 7.4 7.4 7.9 7.3 7.8 7.5 ...
##  $ volatile.acidity    : num  0.7 0.88 0.76 0.28 0.7 0.66 0.6 0.65 0.58 0.5 ...
##  $ citric.acid         : num  0 0 0.04 0.56 0 0 0.06 0 0.02 0.36 ...
##  $ residual.sugar      : num  1.9 2.6 2.3 1.9 1.9 1.8 1.6 1.2 2 6.1 ...
##  $ chlorides           : num  0.076 0.098 0.092 0.075 0.076 0.075 0.069 0.065 0.073 0.071 ...
##  $ free.sulfur.dioxide : num  11 25 15 17 11 13 15 15 9 17 ...
##  $ total.sulfur.dioxide: num  34 67 54 60 34 40 59 21 18 102 ...
##  $ density             : num  0.998 0.997 0.997 0.998 0.998 ...
##  $ pH                  : num  3.51 3.2 3.26 3.16 3.51 3.51 3.3 3.39 3.36 3.35 ...
##  $ sulphates           : num  0.56 0.68 0.65 0.58 0.56 0.56 0.46 0.47 0.57 0.8 ...
##  $ alcohol             : num  9.4 9.8 9.8 9.8 9.4 9.4 9.4 10 9.5 10.5 ...
##  $ quality             : int  5 5 5 6 5 5 5 7 7 5 ...
indexn = NULL
indexc = NULL

par(mfrow=c(3,4)) #3 filas y 4 columnas

for(i in 1:columna){
  if(is.numeric(BDWine[,i])==TRUE){  #is.numeric(BD[filas,columnas]), la pregunta es a la columna no a la fila, vacío significa todas las filas
    titulo = paste("Análisis de la variable: ",colnames((BDWine)[i]))  #hist(¿de quien?,)
    hist(BDWine[,i],col=i,main=titulo,xlab="Valores")
    indexn = c(indexn,i) 
  } else{
    titulo = paste("Análisis de la variable: ",colnames((BDWine)[i]))
    pie(table(BDWine[,i]),main=titulo, xlab="Valores")
    indexc <- c(indexc,i)
  }
}

for(i in 1:columna){
  if(is.numeric(BDWine[,i])==TRUE){  #is.numeric(BD[filas,columnas]), la pregunta es a la columna no a la fila, vacío significa todas las filas
    titulo = paste("Análisis de la variable: ",colnames((BDWine)[i]))  #hist(¿de quien?,)
    boxplot(BDWine[,i],col=i,main=titulo)
    indexn = c(indexn,i) 
  } else{
    titulo = paste("Análisis de la variable: ",colnames((BDWine)[i]))
    boxplot(table(BDWine[,i]),main=titulo)
    indexc <- c(indexc,i)
  }
}

Análisis de las Variables

A continuación se realiza un análisis de cada variable que presenta la base de datos de vinos.

Variable N° 1 “fixed.acidity”

La variable presenta una distribución asimétrica hacia la derecha, con una media de 8.32 y una desviación estándar de 1.74. Se identifican valores superiores a 15.9 como atípicos. Un análisis adicional sería útil para determinar si estos valores representan condiciones naturales o anomalías en la producción.

Variable N° 2 “Volatile.acidity”

La distribución tiene una distribución asimétrica hacia la derecha, con un promedio de 0.53 y una desviación estándar de 0.18. Valores superiores a 1.58 se consideran outliers significativos. Se recomienda un tratamiento de valores atípicos.

Variable N° 3 “citric.acid”

Esta variable tiene una media de 0.27 y una concentración elevada de valores cercanos a cero; sin embargo, valores cercanos al máximo 1. Un análisis más profundo podría identificar el impacto de estos valores en la calidad del vino.

Variable N° 4 “residual.sugar”

La variable presenta valores extremos significativos, con una media de 2.54 y un máximo de 15.5. Se recomienda analizar los registros con valores superiores a 10 para entender el impacto en los resultados.

Variable N° 5 “chlorides”

La variable chlorides tiene un valor promedio de 0.087, con la mayoría de los datos se presentan entre 0.070 (Q1) y 0.090 (Q2). Sin embargo, presenta 112 valores atípicos por encima de 0.120, con un valor máximo de 0.611, generando una distribución asimétrica hacia a la derecha. Estos valores extremos podrían indicar problemas en el proceso de producción o una menor calidad del vino.

Variable N° 6 “free.sulfur.dioxide”

La variable free.sulfur.dioxide tiene una distribución centrada entre 7 (Q1) y 21 (Q2), con un promedio de 15.87. Existen valores atípicos por encima de 42.5, lo que sugiere la presencia de vinos con cantidades muy elevadas de dióxido de azufre libre.

Variable N° 7 “total.sulfur.dioxide”

La variable total.sulfur.dioxide presenta una distribución asimétrica hacia la izquierda, con una concentración entre 22 y 62 y un promedio de 46.47. Existen valores atípicos que superan 122, lo que sugiere la presencia de vinos con cantidades inusuales de dióxido de azufre total.

Variable N° 8 “density”

La variable density muestra valores muy concentrados alrededor de 0.9967, con una ligera variación y presenta valores atípicos que se desvían ligeramente del rango esperado. Estos valores atípicos podrían reflejar diferencias en el contenido que podrían afectar la calidad del vino.

Variable N° 9 “pH”

La variable pH , está concentrado entre 3.210 y 3.400 (rango intercuartílico). Se observa que la distribución es simétrica , dado que la media y la mediana son casi idénticas (3.311 y 3.310) Se observa que el pH mínimo es 2.74, y el máximo 4.01, mostrando una ligera dispersión hacia valores más altos, esto significa que hay una tendencia general a que los valores de pH estén en el rango superior (hacia 4.01).

Variable N° 10 “sulphates”

Se observa que la variable sulphates mantiene una asimetría positiva, esto debido a que encontramos valores extremos. la mayoría de los valores de sulphates se encuentran entre 0.550 y 0.730, pero hay valores más altos (hasta 2.000).

Variable N° 11 “Alcohol”

Se observa que la distribución de alcohol es asimétrica hacia la derecha, ya que la media (10.42) es ligeramente mayor que la mediana (10.20, se explica dado que hay valores más grandes que la mayoría de los datos, arrastrando el promedio hacia arriba. La mayoría de los valores de alcohol se concentran alrededor de 10-11 grados, con un rango que va desde 8.4 a 14.9.

Variable N° 12 “quality”

Se ha identificado que la variable Quality es la variable objetivo en la base de datos. Asímismo, se observa presenta una ligera asimetría a la izquierda dado que, ya que el 50% de los datos (entre el 1er cuartil y el 3er cuartil) están entre 5 y 6, siendo la media (5.636) menor que la mediana (6.00).