Este estudio analiza la resistencia a la compresión del concreto en función de sus componentes químicos y físicos, incluyendo cemento, escoria, ceniza volante, agua, aditivos, agregados y el tiempo de curado. Los datos provienen del repositorio UCI Machine Learning: Concrete Compressive Strength Data Set.
library(readxl)
datos <- read_excel("Concrete_Data.xls")
head(datos)
## # A tibble: 6 × 9
## Cement (component 1)(kg in a m…¹ Blast Furnace Slag (…² Fly Ash (component 3…³
## <dbl> <dbl> <dbl>
## 1 540 0 0
## 2 540 0 0
## 3 332. 142. 0
## 4 332. 142. 0
## 5 199. 132. 0
## 6 266 114 0
## # ℹ abbreviated names: ¹`Cement (component 1)(kg in a m^3 mixture)`,
## # ²`Blast Furnace Slag (component 2)(kg in a m^3 mixture)`,
## # ³`Fly Ash (component 3)(kg in a m^3 mixture)`
## # ℹ 6 more variables: `Water (component 4)(kg in a m^3 mixture)` <dbl>,
## # `Superplasticizer (component 5)(kg in a m^3 mixture)` <dbl>,
## # `Coarse Aggregate (component 6)(kg in a m^3 mixture)` <dbl>,
## # `Fine Aggregate (component 7)(kg in a m^3 mixture)` <dbl>, …
¿Cómo predecir la resistencia a la compresión del concreto en función de sus componentes y del tiempo de curado?
Este es un problema de regresión lineal múltiple ya que la variable respuesta es cuantitativa continua.
Modelo general:
\[ Y = \beta_0 + \beta_1 X_1 + \beta_2 X_2 + \ldots + \beta_8 X_8 + \varepsilon \]
modelo <- lm(`Concrete compressive strength(MPa, megapascals)` ~ ., data = datos)
summary(modelo)
##
## Call:
## lm(formula = `Concrete compressive strength(MPa, megapascals)` ~
## ., data = datos)
##
## Residuals:
## Min 1Q Median 3Q Max
## -28.653 -6.303 0.704 6.562 34.446
##
## Coefficients:
## Estimate Std. Error
## (Intercept) -23.163756 26.588421
## `Cement (component 1)(kg in a m^3 mixture)` 0.119785 0.008489
## `Blast Furnace Slag (component 2)(kg in a m^3 mixture)` 0.103847 0.010136
## `Fly Ash (component 3)(kg in a m^3 mixture)` 0.087943 0.012585
## `Water (component 4)(kg in a m^3 mixture)` -0.150298 0.040179
## `Superplasticizer (component 5)(kg in a m^3 mixture)` 0.290687 0.093460
## `Coarse Aggregate (component 6)(kg in a m^3 mixture)` 0.018030 0.009394
## `Fine Aggregate (component 7)(kg in a m^3 mixture)` 0.020154 0.010703
## `Age (day)` 0.114226 0.005427
## t value Pr(>|t|)
## (Intercept) -0.871 0.383851
## `Cement (component 1)(kg in a m^3 mixture)` 14.110 < 2e-16 ***
## `Blast Furnace Slag (component 2)(kg in a m^3 mixture)` 10.245 < 2e-16 ***
## `Fly Ash (component 3)(kg in a m^3 mixture)` 6.988 5.03e-12 ***
## `Water (component 4)(kg in a m^3 mixture)` -3.741 0.000194 ***
## `Superplasticizer (component 5)(kg in a m^3 mixture)` 3.110 0.001921 **
## `Coarse Aggregate (component 6)(kg in a m^3 mixture)` 1.919 0.055227 .
## `Fine Aggregate (component 7)(kg in a m^3 mixture)` 1.883 0.059968 .
## `Age (day)` 21.046 < 2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 10.4 on 1021 degrees of freedom
## Multiple R-squared: 0.6155, Adjusted R-squared: 0.6125
## F-statistic: 204.3 on 8 and 1021 DF, p-value: < 2.2e-16
par(mfrow = c(2, 2))
plot(modelo)