setwd("C:/DATOS/DOCUMENTACION/DOCTORADO/MODELOS/R/REGRESION") source('simpleRegressionFunctions.txt', local=TRUE) 'EJERCICIO 5.1 'costes.dat 'Fuente: datos confidenciales. 35 datos de coste total y unidades fabricadas en plantas de producción y el montaje de placas de ordenadores 'Descripción: 'Primera columna: costes totales de fabricación 'Segunda columna : número de unidades fabricadas 'A: CARGA DE DATOS DATOS <- read.table("C:/DATOS/DOCUMENTACION/DOCTORADO/MODELOS/R/REGRESION/DATOS_LIBRO/costes.dat",header=F,sep="", quote="") Y = as.numeric(DATOS$V1) X = as.numeric(DATOS$V2) TY <- "Costes Totales\n de Fabricación, CTF" TX <- "Unidades Fabricadas, UF" 'B: UNIVARIATE EDA viewEDA(Y,X,TY,TX) 'Como se aprecia en los graficos, CTF es ligeramente asimetrica positiva, observando una cierta 'Normalidad, mientras que UF presenta una total asimetria positiva y una falta de normalidad 'En ambos casos se observan datos anomalos, a traves del grafico boxplot 'C: CREATE MODEL REGRESSION <- createSRM(Y,X,1) REGRESSION 'Como se observa en el Scatterplot y en el modelo de regresión, existe relacion entre 'las variables del modelo para valores pequeños, aumentando la dispersion, 'conforme aumentan los valores de ambas variables. 'Como ya se vio, en el anterior punto, es necesario eliminar del modelo 'los valores anomalos. 'Los resultados del modelo de regression son: 'Residuals: ' Min 1Q Median 3Q Max '-137.3857 -24.4961 -0.1167 29.8479 105.0283 'Coefficients: ' Estimate Std. Error t value Pr(>|t|) '(Intercept) 33.92200 11.57500 2.931 0.0061 ** 'X 0.09640 0.01665 5.789 1.80e-06 *** '--- 'Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1 'Residual standard error: 44.49 on 33 degrees of freedom 'Multiple R-Squared: 0.5039, Adjusted R-squared: 0.4888 'F-statistic: 33.51 on 1 and 33 DF, p-value: 1.796e-06 'El modelo seria: Y = 33.922 + 0.0964*X 'Esto indica que el modelo las unidades fabricadas no explican los costes totales de fabricacion. 'Por otra parte el error estandar de es demasiado alto. 'Esto indica la necesidad de eliminar del modelo los datos anomalos. ' NOTA: Si se detectan datos outliers, es necesario eliminarlos del modelo simpleOutlierDetection(Y,1) simpleOutlierDetection(X,1) 'NOTA: Una vez tengo detectado donde estan los datos OUTLIERS que afectan al modelo, se vuelve a generar el modelo. Y2 = getSubconjunto(Y,1,31) X2 = getSubconjunto(X,1,31) viewEDA(Y2,X2,TY,TX) 'Despues de eliminar de las variables los datoas anomalos, CFT, sigue presentando 'Las mismas caracteristicas que en el primer caso, mientras que UF, 'presenta una tendencia exponencial, con una asimetria positiva. 'Siguen observandose datos anomalos. REGRESSION2 <- createSRM(Y2,X2) REGRESSION2 'Los resultados de la recta de regresion son los siguientes: 'Residual standard error: 46.2 on 29 degrees of freedom 'Multiple R-Squared: 0.5213, Adjusted R-squared: 0.5048 'F-statistic: 31.58 on 1 and 29 DF, p-value: 4.548e-06 'Como se observa, se ha mejorado un poco en R-squared, pero sigue siendo inaceptable. 'Se puede concluir que la variable X no explica el comportamiento de Y. simpleOutlierDetection(Y2,1) simpleOutlierDetection(X2,1) Y3 = getSubconjunto(Y2,1,28) X3 = getSubconjunto(X2,1,28) viewEDA(Y3,X3,TY,TX) createSRM(Y3,X3)