1. Definición.

En general, las variables utilizadas en el análisis de regresión son de tipo cuantitativo. Sin embargo, algunas veces se tienen variables cualitativas categóricas como variables predictoras en la regresión. Variables como género (masculino, femenino) estado de empleo (empleado, desempleado) o aquellas que admiten un No o Sí. A estas variables se les deben asignar un conjunto de niveles para tener en cuenta el efecto que pueda tener dicha variable sobre la respuesta. Esto se realiza utilizando variables indicadoras o ficticias o dicótomas. Por ejemplo si la variable es el género, se puede utilizar una variable indicadora que tome los valores 0 y 1, así:

\[\begin{equation*} x_{i}= \begin{cases} 1 &\text{si es hombre.}\\ 0 &\text{si es mujer.} \end{cases} \end{equation*}\]

Un modelo de regresión puede tener variables explicatorias solo cuantitativas o solo dicótomas o una combinación de los dos tipos.

2. Regresión con una variable explicatoria dicótoma.

El modelo tendría la forma:

\[\begin{equation*} Y_{i}=\beta_{0}+\beta_{0}D_{i} \end{equation*}\]

Donde

\[\begin{equation*} D_{i}= \begin{cases} 1 &\text{si }\\ 0 &\text{si } \end{cases} \end{equation*}\]

Ejemplo. Tomado del libro Econometría de Damodar Gujarati. Página 491.

Y: salario anual de un profesor universitario.

\[\begin{equation*} D_{i}= \begin{cases} 1 &\text{si es un profesor universitario hombre.}\\ 0 &\text{si es un profesor universitario mujer.} \end{cases} \end{equation*}\]

D1<-c(1,0,0,1,0,1,1,0,0,1)
y1<-c(22.0,19.0,18.0,21.7,18.5,21.0,20.5,17.0,17.5,21.2)

2.1. Diagrama de dispersión.

grupo <- as.factor(ifelse(D1<1,"Fem.","Masc."))
plot(y1,D1,pch =as.numeric(grupo), col = grupo)
legend("bottomright",legend = c("Fem.", "Masc"),col =1:2,pch = 1:2)

scatterplot(y1~D1|grupo,regLine=TRUE,smooth=FALSE)

2.2. Modelo.

mode1<-lm(y1~D1)
summary(mode1)
## 
## Call:
## lm(formula = y1 ~ D1)
## 
## Residuals:
##    Min     1Q Median     3Q    Max 
## -1.000 -0.445 -0.040  0.480  1.000 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  18.0000     0.3118  57.735 8.99e-12 ***
## D1            3.2800     0.4409   7.439 7.34e-05 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.6971 on 8 degrees of freedom
## Multiple R-squared:  0.8737, Adjusted R-squared:  0.8579 
## F-statistic: 55.34 on 1 and 8 DF,  p-value: 7.34e-05

2.3. Anova.

anava<-aov(y1~D1)
summary(anava)
##             Df Sum Sq Mean Sq F value   Pr(>F)    
## D1           1 26.896  26.896   55.34 7.34e-05 ***
## Residuals    8  3.888   0.486                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

2.4. Coeficientes.

co<-coefficients(mode1);co
## (Intercept)          D1 
##       18.00        3.28
a1<-mode1$coefficients[1]
a2<-mode1$coefficients[2]

2.5. Intervalo de confianza para los parámetros.

confint(mode1,level=0.95)
##                 2.5 %    97.5 %
## (Intercept) 17.281059 18.718941
## D1           2.263264  4.296736

2.6. Estimación.

nuevo<-data.frame(D1=0)
predict.lm(mode1,newdata=nuevo)
##  1 
## 18
pre1<-predict(mode1);pre1
##     1     2     3     4     5     6     7     8     9    10 
## 21.28 18.00 18.00 21.28 18.00 21.28 21.28 18.00 18.00 21.28
predict.lm(mode1,newdata=nuevo,interval="prediction")
##   fit      lwr      upr
## 1  18 16.23896 19.76104

2.7. Residuos.

res1<-resid(mode1);res1
##             1             2             3             4             5 
##  7.200000e-01  1.000000e+00  1.665335e-16  4.200000e-01  5.000000e-01 
##             6             7             8             9            10 
## -2.800000e-01 -7.800000e-01 -1.000000e+00 -5.000000e-01 -8.000000e-02
qqnorm(res1)
qqline(res1)

3. Regresión con una variable explicatoria cuantitativa y una variable dicótoma.

El modelo tendría la forma:

\[\begin{equation*} Y_{i}=\beta_{0}+\beta_{0}D_{i}+\beta_{2}X_{i} \end{equation*}\]

Donde

\[\begin{equation*} D_{i}= \begin{cases} 1 &\text{si }\\ 0 &\text{si } \end{cases} \end{equation*}\]

Ejemplo. Tomado del libro Econometría de Damodar Gujarati. Página 515.

Y: salario anual de un profesor universitario.

X: años de experiencia docente.

\[\begin{equation*} D_{i}= \begin{cases} 1 &\text{si es un profesor universitario hombre.}\\ 0 &\text{si es un profesor universitario mujer.} \end{cases} \end{equation*}\]

y2<-c(23.0,19.5,24.0,21.0,25.0,22.0,26.5,23.1,25.0,28.0,29.5,26.0,27.5,31.5,29.0)
x2<-c(1,1,2,2,3,3,4,4,5,5,6,6,7,7,8)
D2<-c(1,0,1,0,1,0,1,0,0,1,1,0,0,1,0)

3.1. Diagrama de dispersión.

grupo2 <- as.factor(ifelse(D2<1,"Fem.","Masc."))
plot(x2,y2,pch =as.numeric(grupo2), col = grupo2)
legend("bottomright",legend = c("Fem.", "Masc"),col =1:2,pch = 1:2)

scatterplot(y2~x2|grupo2,regLine=TRUE,smooth=FALSE)

3.2. Modelo.

mode2<-lm(y2~x2+D2)
summary(mode2)
## 
## Call:
## lm(formula = y2 ~ x2 + D2)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -0.41500 -0.17500 -0.04429  0.16857  0.60214 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept) 17.96929    0.19196   93.61  < 2e-16 ***
## x2           1.37071    0.03565   38.45 6.16e-14 ***
## D2           3.33357    0.15537   21.45 6.13e-11 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.2982 on 12 degrees of freedom
## Multiple R-squared:  0.9933, Adjusted R-squared:  0.9922 
## F-statistic: 886.6 on 2 and 12 DF,  p-value: 9.228e-14

3.3. Anova.

anova<-aov(y2~x2+D2)
summary(anova)
##             Df Sum Sq Mean Sq F value   Pr(>F)    
## x2           1 116.76  116.76  1312.8 1.25e-13 ***
## D2           1  40.94   40.94   460.3 6.13e-11 ***
## Residuals   12   1.07    0.09                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

3.4. Coeficientes.

co2<-coefficients(mode2);co2
## (Intercept)          x2          D2 
##   17.969286    1.370714    3.333571
b1<-mode2$coefficients[1]
b2<-mode2$coefficients[2]
b3<-mode2$coefficients[3]

3.5. Intervalo de confianza para los parámetros.

confint(mode2,level=0.95)
##                 2.5 %    97.5 %
## (Intercept) 17.551051 18.387520
## x2           1.293050  1.448378
## D2           2.995041  3.672102

3.6. Estimación.

nuevo2<-data.frame(x2=3,D2=0)
predict.lm(mode2,newdata=nuevo2)
##        1 
## 22.08143
pre2<-predict(mode2);pre2
##        1        2        3        4        5        6        7        8 
## 22.67357 19.34000 24.04429 20.71071 25.41500 22.08143 26.78571 23.45214 
##        9       10       11       12       13       14       15 
## 24.82286 28.15643 29.52714 26.19357 27.56429 30.89786 28.93500
predict.lm(mode2,newdata=nuevo2,interval="prediction")
##        fit      lwr      upr
## 1 22.08143 21.38245 22.78041
predict.lm(mode2,newdata=nuevo2,interval="confidence")
##        fit      lwr      upr
## 1 22.08143 21.82385 22.33901

3.7. Residuos.

res2<-resid(mode2);res2
##           1           2           3           4           5           6 
##  0.32642857  0.16000000 -0.04428571  0.28928571 -0.41500000 -0.08142857 
##           7           8           9          10          11          12 
## -0.28571429 -0.35214286  0.17714286 -0.15642857 -0.02714286 -0.19357143 
##          13          14          15 
## -0.06428571  0.60214286  0.06500000
qqnorm(res2)
qqline(res2)

|—|

O.M.F.