Применение производственной функции CES с помощью micEconCES

В настоящее время я пытаюсь сделать некоторые оценки, используя пакет micEconCES в R от Henningsen/Henningsen (2011). Моя проблема в том, что я не очень знаком с R и пытаюсь реализовать свой собственный набор данных, чтобы получить оценки с помощью пакета. Они авторы статьи создали этот набор данных для оценок. 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)

Первая строка устанавливает "начальное число" для генератора случайных чисел, так что эти примеры могут быть воспроизведены с точно таким же набором данных. Во второй строке создается набор данных с четырьмя входными переменными (называемыми x1, x2, x3 и x4), каждая из которых имеет 200 наблюдений и генерируется из случайных распределений χ2 с 10 степенями свободы. Третья, пятая и седьмая команды используют функцию cesCalc, которая входит в пакет micEconCES, для вычисления детерминированных выходных переменных для функций CES с двумя, тремя и четырьмя входами (называемыми y2, y3 и y4 соответственно) с учетом производственной функции CES. Теперь в моей статье я пытаюсь оценить функцию CES для США на уровне совокупности для двух входных данных с капиталом и трудом. Поэтому я собрал данные из базы данных Всемирного банка за 1990–2015 гг., Где использовал валовое накопление основного капитала для капитала и общую рабочую силу для рабочей силы.

Авторы сделали нелинейную оценку следующим образом 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 )

Теперь я хочу точно такую ​​же вещь для моего собственного набора данных, который называется Data_Extract_From_World_Development_Indicators. Так что я сделал, во-первых, 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 ) )

Так что я повторил R> cesData$y2 <- cesCalc( xNames = c( "x1", "x2" ), data = cesData, coef = c( gamma = 1, delta = 0.6, rho = 0.5, nu = 1.1 ) )

Все, что я сделал, это изменил имя набора данных и заменил x1 и x2 моими двумя переменными для капитала и труда.

После этого я попытался сделать нелинейную оценку 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) )

Вот где моя проблема: я не знаю, какая переменная должна быть y2 в моем наборе данных. Я могу видеть в формуле, что y2 ~ gamma *... так что она построена по отношению к остальной части термина, но я не знаю, какое значение мне нужно добавить туда. Я пытался использовать ВВП как у2 с кодомcesulan <- nls(GDP ~ 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) )но я получаю ошибку не числовой аргумент для бинарного оператора. Что я могу сделать?

0 ответов

Другие вопросы по тегам