Minimos Cuadrados Generalizados

M.I.I. Gabriel Grosskelwing Nuñez

1 Minimos Cuadrados Generalizados

La técnica de Mínimos Cuadrados, desarrollada por Karl Friedrich Gauss, matemático y astrónomo alemán, postula que cualquier curva puede ajustarse a un modelo matemático siempre y cuando se minimice la suma de los cuadrados de las desviaciones de las observaciones respecto del modelo matemático propuesto, es decir:

\[Min~{\sum_{i=1}^n}{e_i^2}=Min~{\sum_{i=1}^n}{[y_i-f(x_i)]^2}\]

2 Representacion Gráfica

3 Ejemplo de aplicacion en lenguaje R

Para proceder a un analisis de regresion mediante minimos cuadrados seguiremos el guion metodologico que se muestra a continuacion:

Guion Metodologico

4 Ejemplo

4.1 Definicion de las variables

Considere el siguiente conjunto de datos

x=rnorm(10)
y=rnorm(10)

df.1=data.frame("x"=x,"y"=y)
print(df)
             x          y
1   1.36258511 -0.4905178
2   1.20170171  0.5668329
3   0.21728773  0.4094972
4  -1.55054503 -0.8027020
5  -0.34865126 -0.8347849
6   1.49426595  1.1355993
7   0.27298469  2.1724646
8  -1.14170370 -1.6137715
9   0.03892467 -1.5023055
10 -0.84791295  0.5381209

4.2 Grafica de dispersion

library(ggplot2)
g1=ggplot(data=df.1,aes(x=x,y=y))+
  geom_point()+
  labs(x="Variable regresora",y="Variable de respuesta",title = "Grafico de dispersion",caption = "Elaboró: MII. Gabriel Grosskelwing Núñez")+
  theme_minimal()
g1

4.3 Planteamiento del modelo estadístico

Para hacer el plantemaiento de minimos cuadrados generalizados usaremos el siguiente código:

Call:
loess(formula = y ~ x, data = df, span = 0.75)

Number of Observations: 10 
Equivalent Number of Parameters: 5.1 
Residual Standard Error: 1.263 
Trace of smoother matrix: 5.64  (exact)

Control settings:
  span     :  0.75 
  degree   :  2 
  family   :  gaussian
  surface  :  interpolate     cell = 0.2
  normalize:  TRUE
 parametric:  FALSE
drop.square:  FALSE 

4.4 Ajustes del modelo

Para obtener los ajustes del modelo estadistico aplicaremos el siguiente código:

print(loess_fit$fitted)
 [1]  0.4556848  0.5962728  0.5935646 -1.0771563 -0.8924184  0.4388287
 [7]  0.7855437 -0.5704847 -0.6047393 -0.3462448

4.5 Gráfico de línea ajustada

Para visualizar la gráfica de línea ajustada del modelo generalizado utilizaremos el siguiente código:

library(ggplot2)
g2=ggplot(data=df.1,aes(x=x,y=y))+
  geom_point()+
  geom_smooth(method = "loess",color="blue",fill="skyblue")+
  labs(x="Variable regresora",y="Variable de respuesta",title = "Gráfica de línea ajustada",caption = "Elaboró: MII. Gabriel Grosskelwing Núñez")+
  theme_minimal()

4.5.1 Gráfica de línea ajustada

5 Prueba de normalidad

Para establecer la normalidad de los residuos implementaremos el siguiente código:

library(dplyr)
library(ggplot2)

df.1=df.1%>%mutate(Residuales=loess_fit$residuals,Ajustes=loess_fit$fitted)
qq_res=ggplot(data = df.1, aes(sample = Residuales)) +
  stat_qq(shape="+",size=5) +
  stat_qq_line() +
  ggtitle("Gráfica de Probabilidad Normal de los Residuales") +
  xlab("Cuantiles Teóricos") +
  ylab("Residuales Studentizados")+
  theme_minimal()

5.1 Grafica de Probabilidad Normal para Residuales

6 Prueba de homocedasticdad

Para realizar la prueba de homocedasticidad procederemos bajo el siguente código:

res_aj=ggplot(data=df.1)+
  geom_point(aes(x=Ajustes,y=Residuales))+
  geom_hline(aes(yintercept=mean(Residuales),color="red"))+
  theme_minimal()+
  theme(legend.position = "none")

6.1 Grafica de Residuales contra Ajustes