Actualmente estoy tratando de hacer algunas estimaciones usando el paquete micEconCES en R por Henningsen/Henningsen (2011). Mi problema es que no estoy muy familiarizado con R y estoy tratando de implementar mi propio conjunto de datos para obtener las estimaciones con el paquete. Los autores del artículo crearon este conjunto de datos para las estimaciones.
R> set.seed( 123 )
R> cesData <- data.frame(x1 = rchisq(200, 10), x2 = rchisq(200, 10), x3 = rchisq(200, 10), x4 = rchisq(200, 10) )
R> cesData$y2 <- cesCalc( xNames = c( "x1", "x2" ), data = cesData, + coef = c( gamma = 1, delta = 0.6, rho = 0.5, nu = 1.1 ) )
R> cesData$y2 <- cesData$y2 + 2.5 * rnorm( 200 )
R> cesData$y3 <- cesCalc(xNames = c("x1", "x2", "x3"), data = cesData, coef = c( gamma = 1, delta_1 = 0.7, delta = 0.6, rho_1 = 0.3, rho = 0.5, + nu = 1.1), nested = TRUE )
R> cesData$y3 <- cesData$y3 + 1.5 * rnorm(200)
R> cesData$y4 <- cesCalc(xNames = c("x1", "x2", "x3", "x4"), data = cesData, coef = c(gamma = 1, delta_1 = 0.7, delta_2 = 0.6, delta = 0.5, rho_1 = 0.3, rho_2 = 0.4, rho = 0.5, nu = 1.1), nested = TRUE )
R> cesData$y4 <- cesData$y4 + 1.5 * rnorm(200)
La línea first establece la "semilla" para el generador de números aleatorios para que estos ejemplos puedan ser replicados con exactamente el mismo conjunto de datos. La segunda línea crea un conjunto de datos con cuatro variables de entrada (llamadas x1, x2, x3 y x4) que tienen cada una 200 observaciones y se generan a partir de distribuciones aleatorias de χ2 con 10 grados de libertad. La tercera, fifth, y la séptima utilizan la función cesCalc, que se incluye en el paquete micEconCES, para calcular las variables de salida deterministas para las funciones CES con dos, tres y cuatro entradas (llamadas y2, y3 y y4, respectivamente) dada una función de producción CES. Ahora en mi trabajo estoy tratando de estimar la función CES para los EE.UU. a nivel agregado para el caso de dos entradas con capital y trabajo. Así que lo que hice es que reuní datos de la Base de Datos del Banco Mundial de 1990 a 2015, donde utilicé la Formación Bruta de Capital Fijo para el capital y el total de la Fuerza de Trabajo para el Trabajo.
Los autores hicieron, por ejemplo, una estimación no lineal de la siguiente manera
R> cesNls <- nls( y2 ~ gamma * ( delta * x1^(-rho) + (1 - delta) * x2^(-rho) )^(-phi / rho), + data = cesData, start = c( gamma = 0.5, delta = 0.5, rho = 0.25, phi = 1 ) )
R> print( cesNls )
Ahora quiero exactamente lo mismo para mi propio conjunto de datos que se llama Data_Extract_From_World_Development_Indicators. Así que lo que hice es primero
R> ceslan <- cesCalc( xNames = c( "GrossFixedCapitalFormation", "LaborForce" ), data = Data_Extract_From_World_Development_Indicators, coef = c( gamma = 1, delta = 0.6, rho = 0.5, nu = 1.1 ) )
Así que repliqué
R> cesData$y2 <- cesCalc( xNames = c( "x1", "x2" ), data = cesData, coef = c( gamma = 1, delta = 0.6, rho = 0.5, nu = 1.1 ) )
Todo lo que hice fue cambiar el nombre del Dataset y reemplazar x1 y x2 con mis dos variables para el capital y el trabajo.
Después traté de hacer la estimación no lineal
R> cesulan <- nls(y2 ~ gamma * (delta * GrossFixedCapitalFormation^(-rho) + (1-delta)*LaborForce^(-rho))^(-phi / rho), data = Data_Extract_From_World_Development_Indicators, start = c(gamma = 0.5, delta = 0.5, rho = 0.25, phi = 1) )
Aquí es donde está mi problema: no sé qué variable se supone que es y2 en mi conjunto de datos. Puedo ver en la fórmula que y2 ~ gamma *... por lo que se traza contra el resto del término, pero no sé qué tipo de valor necesito para enchufar allí. ¿Alguien tiene algún consejo?