A continuación se realiza una análisis descriptivo de la base de datos de la calidad del vino.
# Importar la base de datos de la calidad del vino y realizar un resumen de la data
BD <- read.csv("/cloud/project/winequality-red.csv")
# Imprimir la dimension de la base de datos
dim(BD)
## [1] 1599 12
# Los nombres de la base de datos
names(BD)
## [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(BD)
## [1] "fixed.acidity" "volatile.acidity" "citric.acid"
## [4] "residual.sugar" "chlorides" "free.sulfur.dioxide"
## [7] "total.sulfur.dioxide" "density" "pH"
## [10] "sulphates" "alcohol" "quality"
# La cantidad de columnas de la base de datos
columnas = dim(BD)[2]
columnas
## [1] 12
# La composicion de la data
str(BD)
## '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 de la data
summary(BD)
## 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
#Comentarios acerca del resumen de la data:
#Todas las variables tienen sesgo positivo.
#Las variables volatile.acidity, residual sugar, chlorides,free.sulfur.dioxide, total.sulfur.dioxide, sulphates tienen outliers con valor más alejado de la mediana.
#Se observa un mayor control en los chlorides(aunque igual tiene outlier)y la densidad.
# La data representa características de la calidad de vino con 1599 observaciones y 12 variables principales. A continuación, se describen las tendencias clave para cada variable:
# Fixed.acidity
# El rango varia entre 4.60 y 15.90, concentrándose principalmente entre 7.10 y 9.20.
# Volatile.acidity
# El rango de los valores se encuentran entre 0.39 y 0.64, con una media de 0.5278
# Citric.acid
# El rango varia entre 0.00 y 1.00, concentrándose entre 0.09 y 0.42.
# Residual.sugar
# El rango oscila entre 0.90 y 15.50, con la mayoría entre 1.90 y 2.60.
# Chlorides
# El rango de los valores se concentran entre 0.070 y 0.090, mientras que el promedio es 0.08747.
# Free.sulfur.dioxide
# El 50% de los valores se encuentran por debajo de 14 y el tercer cuartil es 21, lo que significa que la mayoria de valores se encuentra entre 14 y 21 con valores atipicos de hasta 72.
# Total.sulfur.dioxide
# El rango de los valores se concentran entre 22 y 62
# Density
# El rango de los valores oscilan entre 0.9901 y 1.0037, con la mayoría por debajo de 0.9978.
# pH
# El rango de los valores varían entre 2.74 y 4.01, con la mayoría entre 3.21 y 3.40.
# Sulphates
# El rango de los valores están entre 0.55 y 0.73, con una media de 0.6581.
# Alcohol
# El rango de los valores oscilan entre 8.40 y 14.90, con la mayoría entre 9.50 y 11.10.
# Quality
# Es una variable discreta, con valores entre 3 y 8. La mediana es 6, mientras que la media (5.636) sugiere que la calidad se concentra en niveles moderados.
indexn = NULL
indexc = NULL
par(mfrow = c(2,6))
for(i in 1:columnas){
if(is.numeric(BD[ , i])== TRUE){
titulo <- paste("Analisis de la variable: ", colnames(BD[i]))
hist(BD[ , i], col = i, main = titulo)
indexn <- c(indexn,i)
} else{
titulo <- paste("Analisis de la variable: ", colnames(BD[i]))
pie(table(BD[ , i]), main = titulo)
indexc <- c(indexc,i)
}
}
# Comentarios por variable de la base de datos:
# fixed.acidity (Acidez fija):
# La distribución de fixed.acidity presenta una ligera asimetría positiva (sesgo a la derecha), ya que la media (8.32) es mayor que la mediana (7.90), lo que sugiere la presencia de valores altos atípicos.
# volatile.acidity (Acidez volátil):
# La distribución de volatile.acidity es ligeramente asimétrica hacia la derecha, con la media (0.5278) ligeramente mayor que la mediana (0.5200).
# citric.acid (Ácido cítrico):
# La distribución de citric.acid está sesgada hacia la derecha, ya que la mediana (0.26) es menor que la media (0.271), y existen valores bajos cercanos a cero.
# residual.sugar (Azúcar residual):
#La distribución de residual.sugar está altamente sesgada hacia la derecha, como lo indica la diferencia entre la mediana (2.2) y la media (2.539) y el valor máximo (15.5).
# chlorides (Cloruros):
# La distribución de chlorides es asimétrica positiva, con la media (0.08747) mayor que la mediana (0.079) debido a valores atípicos como el máximo (0.611).
# free.sulfur.dioxide (Dióxido de azufre libre):
# La distribución de free.sulfur.dioxide es sesgada a la derecha, con valores extremos de hasta 72, mientras que la mediana (14) está muy por debajo de la media (15.87).
# total.sulfur.dioxide (Dióxido de azufre total):
# La distribución de total.sulfur.dioxide es altamente asimétrica positiva, con valores máximos elevados (289), lo cual genera una diferencia significativa con la mediana (38).
# density (Densidad):
# La distribución de density es muy simétrica, con una media (0.9967) prácticamente igual a la mediana (0.9968), lo cual es esperable en vinos con contenido alcohólico moderado.
# pH:
# La distribución de pH es aproximadamente simétrica, con la media (3.311) muy cercana a la mediana (3.310), lo cual es típico en vinos con buen equilibrio ácido.
# sulphates (Sulfatos):
# La distribución de sulphates es asimétrica hacia la derecha, como lo evidencia la media (0.6581) mayor que la mediana (0.62), y valores máximos elevados (2.0)
# alcohol:
# La distribución de alcohol es ligeramente asimétrica a la derecha, con la media (10.42) superior a la mediana (10.20), debido a valores máximos de hasta 14.9.
# quality (Calidad):
# La distribucion de quality es una asimetría negativa, ya que en una distribución simétrica la media y la mediana deberían ser iguales o muy cercanas. La media (5.636) es ligeramente menor que la mediana (6.00).