Se tiene una función de producción de electricidad, donde se pretende medir los rendimientos a escala promedio de 158 empresas en EE.UU en 1970.El dataset es Electricity1970 del paquete AER. Trae output y, para insumos, trae precios y participaciones de costo; con eso construimos cantidades de trabajo, capital y combustible.
El modelo es:
\[ Q_i = AL^\alpha K^\beta \\ ln(Q) = lnA + \alpha lnL + \beta lnK \] Dado que la base de datos no cuenta con información directa de las cantidades de \(L\) y \(K\), se debe hallar las demandas dde factores a través de un proceso de optimización, asÃ:
\[ Max Q_i = AL^\alpha K^\beta \quad s.a \\ CT=wL + rK \]
Cuyo resultado es:
\[ L(CT, w) = \frac{\alpha CT}{w} \\ K(CT, r) = \frac{\beta CT}{r} \]
# 2) Construir cantidades de insumos a partir de costos y precios
# L = (share_L * C) / w ; K = (share_K * C) / pK ; F = (share_F * C) / pF
Electricity1970 <- Electricity1970 %>%
mutate(costo_t = cost*1000000,
L = laborshare*costo_t/labor,
K = capitalshare*costo_t/capital)
modelo <- lm(log(output) ~ log(L) + log(K), data = Electricity1970)
stargazer(modelo, type = "text")
##
## ===============================================
## Dependent variable:
## ---------------------------
## log(output)
## -----------------------------------------------
## log(L) 0.297***
## (0.064)
##
## log(K) 0.883***
## (0.058)
##
## Constant -3.294***
## (0.325)
##
## -----------------------------------------------
## Observations 158
## R2 0.951
## Adjusted R2 0.950
## Residual Std. Error 0.405 (df = 155)
## F Statistic 1,498.359*** (df = 2; 155)
## ===============================================
## Note: *p<0.1; **p<0.05; ***p<0.01
\[ Pmg_L = \alpha K^{\alpha−1}L^β \\ Pmg_K = \beta K^\alpha L^{β-1} \]
alpha <- 0.297
beta <- 0.883
alpha_1 <- alpha - 1
beta_1 <- beta - 1
# Productividades marginales
Electricity1970 <- Electricity1970 %>%
mutate(pmgL = alpha*Electricity1970$K^alpha_1*Electricity1970$L^beta,
pmgK = beta*Electricity1970$K^alpha*Electricity1970$L^beta_1)
# Graficar PMgK en 3D (perspectiva)
library(ggplot2)
# Gráfico de PMgK
Electricity1970 %>%
ggplot(aes(x = log(L), y = log(output))) +
geom_point() +
geom_smooth(method = "gam")
## `geom_smooth()` using formula = 'y ~ s(x, bs = "cs")'
# Gráfico de PMgL
Electricity1970 %>%
ggplot(aes(x = log(K), y = log(output))) +
geom_point() +
geom_smooth(method = "gam")
## `geom_smooth()` using formula = 'y ~ s(x, bs = "cs")'