#A continuación, se realiza un análisis descriptivo de la base de datos de la Calidad del Vino
#Se importa la base de datos y se muestra un resumen
Data <- read.csv("C:/Users/User/Downloads/winequality-red.csv")
#Dimensión de la base de datos(N°filas, N°Columnas)
dim(Data)
## [1] 1599 12
#Nombres de las columnas
names(Data)
## [1] "fixed.acidity" "volatile.acidity" "citric.acid"
## [4] "residual.sugar" "chlorides" "free.sulfur.dioxide"
## [7] "total.sulfur.dioxide" "density" "pH"
## [10] "sulphates" "alcohol" "quality"
#Cantidad de columnas
columna <- dim(Data)[2]
columna
## [1] 12
#Composición de la data
str(Data)
## '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 ...
#Resumen de los cuartiles data
summary(Data)
## 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
indexn <- NULL
indexc <- NULL
#Se divide la cuadrícula en 3 filas de 4 gráficas cada una
par(mfrow = c (3,4) )
#Se grafica el análisis por cada variable, histograma = variable numérica, pastel = variable categórica
for(i in 1:columna){
if (is.numeric(Data[,i]) == TRUE){
titulo <- paste ("Variable: ",colnames(Data[i]))
hist(Data[,i],col = i, main = titulo)
indexn <- c(indexn,i)
} else {
titulo <- paste ("Variable: ",colnames(Data[i]))
pie(table(Data[,i]), main = titulo)
indexc <- c(indexc,i)
}
}
#Todas las variables son numéricas
#Variable fixed.acidity:
#- La gráfica muestra un sesgo hacia la derecha, lo que significa que la mayor cantidad de datos se concentran para valores con menor acidez.
#- Hay algunos vinos con acidez muy alta que son considerados como outliers en el rango de 15.2 a 15.9
#Variable volatile.acidity:
#- La gráfica muestra un sesgo hacia la derecha, lo que significa que la mayor cantidad de datos se concentran para valores con menor volatilidad.
#-Hay algunos vinos con volatile.acidity muy alta que son considerados como outliers en el rango de 1.39 a 1.58
#Variable citric.acid:
#Variable residual.sugar:
#- La gráfica muestra un sesgo hacia la derecha, lo que significa que la mayor cantidad de datos se concentran para valores con menor acidez.
#-Hay algunos vinos con volatile.acidity muy alta que son considerados como outliers en el rango de 4.7 a 15.5(valor maximo)
#Variable chlorides:
#-Hay algunos vinos con Variable chlorides muy alta que son considerados como outliers en el rango de 0.13 a 0.611 (valor maximo)
#Variable free.sulfur.dioxide:
#- La gráfica muestra un sesgo hacia la derecha, lo que significa que la mayor cantidad de datos se concentran para vinos con menor presencia de dióxido de sulfuro.
#-Hay algunos vinos con Variable free.sulfur.dioxide muy alta que son considerados como outliers en el rango de 63 a 72
#Variable total.sulfur.dioxide:
#- La gráfica muestra un sesgo hacia la derecha, lo que significa que la mayor cantidad de datos se concentran para valores con menor presencia de dióxido de sulfuro.
#-Hay algunos vinos con Variable free.sulfur.dioxide muy alta que son considerados como outliers en el rango de 182 a 289
#Variable density:
#- La mediana (0.9968) y la media (0.9967) son valores prácticamente iguales, lo que significa que tiene una distribución cercana a la normal.
#Variable PH:
#- La mediana (3.310) y la media (3.311) son valores prácticamente iguales, lo que significa que tiene una distribución cercana a la normal.
#Variable sulphates:
#- La gráfica muestra un sesgo hacia la derecha, lo que significa que la mayor cantidad de datos se concentran para valores con menor presencia de sulphates .
#-Hay algunos vinos con Variable sulphates muy alta que son considerados como outliers en el rango de 0.91 a 2
#Variable alcohol:
#- La gráfica muestra un leve sesgo hacia la derecha con una tendencia aparentemente normal,
#Variable quality:
#- Segun la grafica, se puede intuir que la varibale quality, es multimodal, ya que concentra una gran cantidad de datos en el rango {5,6,7}
# Para el cálculo de los outliers, se utilizó la siguiente fórmula:(Q1-3*IQR,Q3+3*IQR)
# Las variables son numericas, no se encontraron variables NO numericas
# Se recomienda tecnicas para el tratamiento de outliers, ya que en las variables residual.sugar y sulphates, se tienen far outliers, que pueden afectar el tratamiento de la informacion
# Se considera a la varibale quality como la mas importante del data set, por esto, se recomienda buscar las variables que tengan mayor correlacion con esta