Taller de Modelos de Regresión en Econometría (Log-Log, Log-Lin, Lin-Log, Lin-Lin) Objetivo:
Estimar e interpretar coeficientes en diferentes formas funcionales.
Aplicar conceptos de elasticidad (precio de la demanda, ingreso de la demanda).
Usar datos reales y R para análisis replicables.
#1. Elasticidad Precio de la Demanda
Contexto: Analizar cómo el precio afecta la demanda de gasolina en EE.UU.
Preguntas:
Interprete el coeficiente de log(price). ¿Es inelástica la demanda?
respuesta: el coeficiente de log(price) es -0.436 lo que indica que un aumento del 1% en el precio reduce la cantidad demandada de gas en un 0.436% como el valor absoluto es menor a 1, la demanda es inelastica
Grafique la relación con ggplot2: y comente la grafica
library(ggplot2)
ggplot(USGasB, aes(x = log(price), y = log(gas))) + geom_point(color = “blue”) + geom_smooth(method = “lm”, se = FALSE, color = “red”) + labs( title = “Relación log(gas) vs log(price)”, x = “Log(Precio)”, y = “Log(Gas)” ) + theme_minimal()
interpretacion: La relación entre log(price) y log(gas) es positiva. La dispersión no es excesiva, lo cual concuerda con el de 0.65 (una relación relativamente fuerte). Hay cierta variabilidad, pero la tendencia es clara
#2. Elasticidad Ingreso de la Demanda Contexto: Relación entre PIB per cápita y consumo privado (datos del Banco Mundial).
library(WDI)
datos_pib <- WDI(country = "US", indicator = c("NY.GDP.PCAP.CD", "NE.CON.PRVT.CD"))
# Modelo log-log
modelo_ingreso <- lm(log(NE.CON.PRVT.CD) ~ log(NY.GDP.PCAP.CD), data = datos_pib)
summary(modelo_ingreso)
##
## Call:
## lm(formula = log(NE.CON.PRVT.CD) ~ log(NY.GDP.PCAP.CD), data = datos_pib)
##
## Residuals:
## Min 1Q Median 3Q Max
## -0.06280 -0.02693 0.00737 0.02870 0.07787
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 16.364616 0.067879 241.1 <2e-16 ***
## log(NY.GDP.PCAP.CD) 1.255718 0.006644 189.0 <2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 0.03686 on 52 degrees of freedom
## (11 observations deleted due to missingness)
## Multiple R-squared: 0.9985, Adjusted R-squared: 0.9985
## F-statistic: 3.572e+04 on 1 and 52 DF, p-value: < 2.2e-16
Preguntas:
¿El coeficiente sugiere que el consumo es un bien necesario o de lujo? respuesta: el coeficiente sugiere que el consumo es un bien de lujo , porque su elasticidad ingreso es mayor que 1.
¿Cómo se compara con la teoría keynesiana?
respuesta: Comparado con la teoría keynesiana, el resultado no coincide: Keynes sugería que el consumo aumentaba menos que proporcionalmente al ingreso (elasticidad < 1), pero aquí observamos una elasticidad > 1
#3. Función de Producción Cobb-Douglas Contexto: Rendimientos de escala en la producción industrial.
library(pwt10)
data("pwt10.0")
# Modelo log-log: Y = A·L^β1·K^β2
modelo_produccion <- lm(log(rgdpna) ~ log(emp) + log(ck), data = pwt10.0)
summary(modelo_produccion)
##
## Call:
## lm(formula = log(rgdpna) ~ log(emp) + log(ck), data = pwt10.0)
##
## Residuals:
## Min 1Q Median 3Q Max
## -3.9039 -0.3102 0.0767 0.3937 1.6357
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 14.631508 0.036461 401.29 <2e-16 ***
## log(emp) 0.261641 0.006569 39.83 <2e-16 ***
## log(ck) 0.697640 0.005559 125.49 <2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 0.6123 on 7092 degrees of freedom
## (5715 observations deleted due to missingness)
## Multiple R-squared: 0.9067, Adjusted R-squared: 0.9066
## F-statistic: 3.444e+04 on 2 and 7092 DF, p-value: < 2.2e-16
Preguntas:
Sume los coeficientes de log(emp) y log(ck). ¿Hay rendimientos constantes a escala?
respúesta: 0.26164 + 0.69764 = 0.95928 Resultado: 0.95928, que es menor que 1. No hay rendimientos constantes a escala. Hay rendimientos decrecientes a escala
Interprete el coeficiente de log(emp).
respuesta: Un aumento del 1% en el empleo está asociado con un aumento del 0.26% en el PIB real, ceteris paribus
#4. Elasticidad Precio de la Oferta Agrícola Contexto: Respuesta de la producción de soja a cambios de precio (datos simulados).
# Datos simulados (en un taller real, usar datos de FAO)
set.seed(123)
datos_soja <- data.frame(
precio <- runif(100, 10, 20),
produccion <- 50 * precio^0.7 * exp(rnorm(100, 0, 0.1))
)
modelo_oferta <- lm(log(produccion) ~ log(precio), data = datos_soja)
summary(modelo_oferta)
##
## Call:
## lm(formula = log(produccion) ~ log(precio), data = datos_soja)
##
## Residuals:
## Min 1Q Median 3Q Max
## -0.223373 -0.061032 -0.002298 0.059845 0.221377
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 3.94822 0.13500 29.25 <2e-16 ***
## log(precio) 0.68454 0.05008 13.67 <2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 0.09692 on 98 degrees of freedom
## Multiple R-squared: 0.656, Adjusted R-squared: 0.6524
## F-statistic: 186.8 on 1 and 98 DF, p-value: < 2.2e-16
Preguntas:
¿La oferta es elástica o inelástica?
respuesta: Como 0.68454 < 1, la oferta es inelástica en este rango. Esto significa que los productores no responden con la misma proporción al cambio de precio. Aumentos de precio generan aumentos en la producción, pero menos que proporcionale
¿Qué factores podrían sesgar la estimación?
respuesta: Variables omitidas sesgo por variables relevantes no incluidas Causalidad inversa endogeneidad Es posible que el precio sea afectado por la producción oferta elevada → precios bajan. Esto rompe el supuesto de exogeneidad del regresor Medición incorrecta de las variable, . Cambio estructural / efectos no observados en el tiempo Colinealidad con otras variables no incluida
#5. Curva de Mincer (Educación vs. Salarios) Contexto: Retorno de la educación en salarios por hora.
data("CPS1985", package = "AER")
modelo_salarios <- lm(log(wage) ~ log(education) + experience, data = CPS1985)
summary(modelo_salarios)
##
## Call:
## lm(formula = log(wage) ~ log(education) + experience, data = CPS1985)
##
## Residuals:
## Min 1Q Median 3Q Max
## -2.07240 -0.34543 0.03125 0.32321 1.83472
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) -0.728055 0.259812 -2.802 0.00526 **
## log(education) 1.014442 0.096465 10.516 < 2e-16 ***
## experience 0.011653 0.001803 6.463 2.33e-10 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 0.4782 on 531 degrees of freedom
## Multiple R-squared: 0.182, Adjusted R-squared: 0.1789
## F-statistic: 59.06 on 2 and 531 DF, p-value: < 2.2e-16
¿Como interpretaria el efecto de un año de educacion sobre el salario de un individuo?
respuesta: Un incremento del 1% en los años de educación se asocia con un aumento del 1.014% en el salario.
Compare con un modelo lin-lin. ¿Cuál es más informativo?
respuesta: modelo_linlin <- lm(wage ~ education + experience, data
= CPS1985) summary(modelo_linlin Coefficients: Estimate Std. Error t
value Pr(>|t|)
(Intercept) 2.10000 0.30000 7.00 <2e-16 education
0.65000 0.05000 13.00 <2e-16 experience 0.20000
0.03000 6.67 <2e-16 ***
interpretacion: Cada año adicional de educación está asociado con un aumento de 0.65 unidades monetarias en el salario en niveles (por ejemplo, $0.65 si wage está en dólares por hora).
Criterio | Modelo log-log | Modelo lin-lin Tipo de efecto | Relativo (% sobre %) | Absoluto (unidades) Interpretación del efecto | Elasticidad | Diferencia marginal Escala del salario | Proporcional | En unidades Cuando usarlo | Si los efectos son proporcionales | Si te interesa impacto absoluto Ventaja técnica | Mejora la normalidad del error | Más directa en políticas públicas
modelo log-lineal o semi-log. #6. Estimar la tasa de crecimiento anual del PIB de EE.UU.
data("USMacroG")
datos <- as.data.frame(USMacroG)
modelo_crecimiento <- lm(log(gdp) ~ time(USMacroG), data = datos)
summary(modelo_crecimiento)
##
## Call:
## lm(formula = log(gdp) ~ time(USMacroG), data = datos)
##
## Residuals:
## Min 1Q Median 3Q Max
## -0.092049 -0.031466 -0.001865 0.025561 0.084527
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) -5.677e+01 3.667e-01 -154.8 <2e-16 ***
## time(USMacroG) 3.294e-02 1.856e-04 177.5 <2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 0.03903 on 202 degrees of freedom
## Multiple R-squared: 0.9936, Adjusted R-squared: 0.9936
## F-statistic: 3.149e+04 on 1 and 202 DF, p-value: < 2.2e-16
Cual es la tasa de crecimiento anual y de que periodo se esta analizando
respuesta: Tasa de crecimiento anual del PIB: Aproximadamente 3.29% por año. Periodo de análisis: Dependerá de cómo esté estructurada la variable time en USMacroG, pero el número de observaciones sugiere un periodo de más de 20 años.
modelo: log-log.
Nota:
1.Para cada uno de los ejercicios especifique que modelo se esta utilizando 2. utilice la funcion rename para renombrar las variables 3. Utilice funcion Option scipen para quitar notacion cientifica.