Os quatro exercícios empíricos a seguir demonstrados em R script e comentados, referem-se, em suma, a questionamentos e elucidações sobre a dualidade microeconômica que existe entre a função custo (minimização de custos) e a função de produção (maximização de lucros), além de investigações econométricas e estatísticas sobre a melhor especificação funcional para cada caso.

rm(list=ls( all =TRUE))

EXERCÍCIO 1- Cost function of electricity producers (1955)

REFERÊNCIA: NERLOVE, M. Returns to scale in electricity supply. Measurement in economics, studies in mathematical economics and econometrics in memory of Yehuda Grunfeld (1963)

require(AER)
## Loading required package: AER
## Warning: package 'AER' was built under R version 3.1.3
## Loading required package: car
## Warning: package 'car' was built under R version 3.1.3
## Loading required package: lmtest
## Warning: package 'lmtest' was built under R version 3.1.3
## Loading required package: zoo
## Warning: package 'zoo' was built under R version 3.1.3
## 
## Attaching package: 'zoo'
## The following objects are masked from 'package:base':
## 
##     as.Date, as.Date.numeric
## Loading required package: sandwich
## Warning: package 'sandwich' was built under R version 3.1.3
## Loading required package: survival
## Warning: package 'survival' was built under R version 3.1.3
data("Electricity1955")
Electricity <- Electricity1955[1:145,]

Greene (2003) Example 7.3

Em 1963, Marc Nerlove publicou uma análise estatística de custos voltada ao estudo das economias de escala na indústria de energia elétrica nos Estados Unidos da América, para dados do ano de 1955. Para tanto, ele avaliou os custos de produção de 145 companhias de geração de eletricidade, distribuídas por 44 estados (em verdade, originalmente eram 159 observações, mas para evitar dupla-contagem foram excluídas 14 delas, referentes a agregados de firmas de mesma propriedade, ou seja, companhias holding). Uma das principais contribuições do artigo está no pioneirismo de enquadrar a dualidade entre funções de custo e funções de produção em um modelo econométrico. Sua base metodológica partiu de uma função de produção de Cobb-Douglas, em que a quantidade produzida depende do capital (K), do trabalho (L), e do combustível (F), cada uma sujeita a um coeficiente de participação relativa dos insumos, \(\alpha_L\), \(\alpha_K\) e \(\alpha_F\) , respectivamente.

Isto posto, cabe mencionar que a modelagem leva em consideração oito variáveis, quais sejam: o custo total (custo de geração em milhões de dólares), a produção total (em milhões de quilowatts/hora), a taxa de emprego (em dólares por hora para produção e manutenção), a participação relativa do trabalho nos custos, o índice de preços do capital (índice de custos de construção), a participação relativa do capital nos custos, o preço dos combustíveis (um índice dos custos por Btu de combustível adquirido pelas empresas) e a participação relativa dos combustíveis nos custos.

objects()
## [1] "Electricity"     "Electricity1955"
dim(Electricity)
## [1] 145   8
head(Electricity)
##    cost output labor laborshare capital capitalshare fuel fuelshare
## 1 0.082      2  2.09     0.3164     183       0.4521 17.9    0.2315
## 2 0.661      3  2.05     0.2073     174       0.6676 35.1    0.1251
## 3 0.990      4  2.05     0.2349     171       0.5799 35.1    0.1852
## 4 0.315      4  1.83     0.1152     166       0.7857 32.2    0.0990
## 5 0.197      5  2.12     0.2300     233       0.3841 28.6    0.3859
## 6 0.098      9  2.12     0.1881     195       0.2926 28.6    0.5193

Cobb-Douglas cost function

fm_all <- lm(log(cost/fuel) ~ log(output) + log(labor/fuel) + log(capital/fuel),
             data = Electricity)
summary(fm_all)
## 
## Call:
## lm(formula = log(cost/fuel) ~ log(output) + log(labor/fuel) + 
##     log(capital/fuel), data = Electricity)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -1.01212 -0.21789 -0.00753  0.16046  1.81898 
## 
## Coefficients:
##                    Estimate Std. Error t value Pr(>|t|)    
## (Intercept)       -4.685776   0.885294  -5.293 4.51e-07 ***
## log(output)        0.720667   0.017435  41.335  < 2e-16 ***
## log(labor/fuel)    0.593972   0.204632   2.903   0.0043 ** 
## log(capital/fuel) -0.008471   0.190842  -0.044   0.9647    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.3917 on 141 degrees of freedom
## Multiple R-squared:  0.9316, Adjusted R-squared:  0.9301 
## F-statistic: 640.1 on 3 and 141 DF,  p-value: < 2.2e-16

Caso a somatória dos coeficientes de participação de cada insumo totalize a unidade \((\beta_L + \beta_K + \beta_F = 1)\), isto seria evidência da existência de retornos constantes de escala na função de produção. A intenção do autor era testar a hipótese usualmente aceita da existência de economias de escala no setor. De todo modo, a modelagem não poderia ser elaborada com base no método de Mínimos Quadrados Ordinários (MQO), uma vez que haveria endogeneidade entre os insumos. Especificamente, a demanda por cada um dos insumos seria dependente dos preços de cada um deles, violando as hipóteses do modelo de regressão clássico. Baseado em pontos levantados por outros autores em estudos correlatos, Nerlove argumentou que no equilíbrio os desvios dos custos em relação ao ponto ótimo de longo prazo seriam independentes do produto, de sorte que o objetivo da firma não seria a maximização do lucro, mas sim a minimização de seus custos, dada a restrição da função de produção. O Lagrangeano resultante mediria a demanda por cada insumo e os custos marginais (no multiplicador), sujeito à restrição de retornos constantes de escala, ou seja, de que a soma dos coeficientes de participação dos insumos seria igual a 1, esta a hipótese que se quer testar.

hypothesis of constant returns to scale

linearHypothesis(fm_all, "log(output) = 1")
## Linear hypothesis test
## 
## Hypothesis:
## log(output) = 1
## 
## Model 1: restricted model
## Model 2: log(cost/fuel) ~ log(output) + log(labor/fuel) + log(capital/fuel)
## 
##   Res.Df    RSS Df Sum of Sq      F    Pr(>F)    
## 1    142 61.027                                  
## 2    141 21.637  1     39.39 256.69 < 2.2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Com a resolução do Lagrangeano, adaptada por algumas transformações logarítmicas na base 10, Nerlove chega a uma função de custo de produção. Dada a teoria da dualidade, o parâmetro vinculado ao logaritmo do produto, \(\beta_q\), é tido como o inverso da relação de economias de escala na indústria (ou seja, o inverso da somatória dos coeficientes de participação de cada insumo da função de produção Cobb-Douglas). Dado que a natureza dos retornos de escala não é diretamente observável, o autor decide estimar o parâmetro da produção na função de custos, \(\beta_q\), e com ele, encontrar estatisticamente o retorno de escala ao qual a indústria está submetida. Destarte, a dualidade pode ser expressa matematicamente por: \[\beta_q = \frac{1}{(\alpha_L+\alpha_K+\alpha_F)}\] As três opções de retornos de escala dentro da análise da dualidade seriam:

  1. \(\alpha_L+\alpha_K+\alpha_F\) = 1 -> retornos constantes de escala -> \(\beta_q\) = 1

  2. \(\alpha_L+\alpha_K+\alpha_F\) > 1 -> retornos crescentes de escala -> \(\beta_q\) < 1

  3. \(\alpha_L+\alpha_K+\alpha_F\) < 1 -> retornos decrescentes de escala -> \(\beta_q\) > 1

Depois de estimado o parâmetro \(\beta_q\), em valor estimado de 0,721 com desvio-padrão de 0,0174, foi rodado um teste t sobre ele, de sorte a rejeitar a hipótese nula de que \(\beta_q\) = 1. As evidências estatísticas levaram o autor a concluir que \(\beta_q\) < 1, ou seja, de que a elasticidade do custo na produção é menor do que 1 e, portanto, que \(\alpha_L+\alpha_K+\alpha_F\) > 1, de sorte que há retornos crescentes de escala (opção (ii), acima).

residual<-fm_all$residuals

Abaixo, plotamos os gráficos da dispersão dos resíduos e o histograma dos resíduos, para visualização direta.

plot(residual)

hist(residual)

Antes de iniciar cada um dos exercícios, iremos limpar os objetos utilizados no exercício anterior.

rm(list=ls(all=TRUE))

EXERCÍCIO 2 - Cost function of electricity producers (1970)

REFERÊNCIA-BASE: Christensen, L.; Greene, W. Economies of scale in U.S. electric power generation. Journal of Political Economy, 84, pp. 655-676, 1976.

REFERÊNCIA COMPLEMENTAR Pavelescu, F. Some aspects of the translog production function estimates. Romanian Journal of Economics, vol. 32, pp. 131-150, 2011.

O estudo de Nerlove (1963) foi atualizado por Christensen e Greene em artigo publicado no Journal of Political Economy, em 1976. Neste, os autores empreenderam dois esforços científicos. Primeiramente, eles utilizaram a mesma base de dados que Nerlove utilizou, porém com uma forma funcional mais elaborada e generalizada da função de produção de Cobb-Douglas, em translog (transcendental logarithmic production function). Os resultados encontrados sugeriram que o modelo de Nerlove poderia ter subestimado o intervalo de produtos no qual os custos de produção seriam estritamente declinantes. Em verdade, Christensen e Greene (1976, p. 671) chegam a afirmar que o intervalo de produção com custos declinantes seria mais do que o dobro do estimado por Nerlove para o ano de 1955, de sorte que as firmas àquela época ainda não teriam exaurido suas economias de escala.

Uma das contribuições essenciais trazidas por Christensen e Greene diz respeito à transformação funcional à qual o modelo econométrico foi submetido, de sorte a adotar uma estrutura de função de custo translog. Essa especificação funcional é uma generalização da função de produção de Cobb-Douglas. Em suma, ela é uma especificação funcional flexível, que permite que as elasticidades parciais de substituição entre os insumos variem. Algumas observações sobre essa especificação funcional são de grande valia. De acordo com Florin-Marius Pavelescu (2011), como o número de parâmetros é drasticamente elevado à medida que o número de fatores de produção aumenta, a função Cobb-Douglas em translog incorre em riscos de multicolinearidade - risco que é miminizado quando o número de insumos é reduzido. Ademais, o modelo permite averiguar a elasticidade de substituição entre os insumos e a elasticidade de escala em consequência dos fatores de produção, de acordo com a trajetória dinâmica de cada fator.

Em segundo lugar, os autores atualizaram o estudo para analisar os dados da indústria de geração de eletricidade nos Estados Unidos para o ano de 1970 (15 anos depois dos dados considerados por Nerlove). Foram mantidas as mesmas variáveis (custo, produto, preço dos insumos capital, trabalho e combustível e seus coeficientes de participação relativa na função-custo). Todavia, o número de observações sofreu alterações. Foram 158 observações, das quais apenas 123 foram utilizadas para rodar o modelo. Para evitar dupla-contagem de firmas, as outras 35 observações foram retiradas da amostra seguindo a metodologia que Nerlove já havia adotado, qual seja, a de excluir as companhias holding, que funcionam como agregados de outras empresas já consideradas.

Em resumo, as modificações implementadas em relação à Nerlove (1963) dizem respeito ao ano da base de dados (de 1955 para 1970), ao número de observações totais (de 159 para 158), ao número de observações excluídas por contemplarem holdings (de 14 para 35), ao número de observações utilizadas para rodar o modelo final (de 135 para 123), e à especificação funcional do modelo, que passou a ser do tipo translog. Abaixo, pode ser visualizada a dimensão da base de dados atualizada para 1970.

Example 5.6: a generalized Cobb-Douglas cost function

data("Electricity1970", package = "AER")

objects()
## [1] "Electricity1970"
dim (Electricity1970)
## [1] 158   8

O modelo rodado e seus parâmetros estimados podem ser visualizados a seguir:

fm <- lm(log(cost/fuel) ~ log(output) + I(log(output)^2/2) +
           log(capital/fuel) + log(labor/fuel), data=Electricity1970[1:123,])

summary(fm)
## 
## Call:
## lm(formula = log(cost/fuel) ~ log(output) + I(log(output)^2/2) + 
##     log(capital/fuel) + log(labor/fuel), data = Electricity1970[1:123, 
##     ])
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -0.45228 -0.09611  0.00121  0.07972  0.40678 
## 
## Coefficients:
##                     Estimate Std. Error t value Pr(>|t|)    
## (Intercept)        -7.294021   0.344277 -21.186  < 2e-16 ***
## log(output)         0.390909   0.036988  10.569  < 2e-16 ***
## I(log(output)^2/2)  0.062413   0.005155  12.108  < 2e-16 ***
## log(capital/fuel)   0.074787   0.061645   1.213 0.227480    
## log(labor/fuel)     0.260785   0.068109   3.829 0.000208 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.1439 on 118 degrees of freedom
## Multiple R-squared:  0.9915, Adjusted R-squared:  0.9913 
## F-statistic:  3457 on 4 and 118 DF,  p-value: < 2.2e-16

O propósito último de Christensen e Greene era não apenas de replicar o estudo de Nerlove ou mesmo de atualizá-lo, mas de expandi-lo com fins a estimar o sistema completo de demanda na indústria de geração de energia elétrica dos Estados Unidos. Para isso, foi feita a adaptação funcional do modelo, de sorte a dividir pela metade o fator quadrático do logaritmo do produto na função de custo. Ao fazer isso, a plotagem dos resíduos obteve uma dispersão relativamente simétrica de média zero, aproximadamente numa distribuição normal. Abaixo, pode ser observada a distribuição dos erros e o seu histograma:

residual<-fm$residuals
plot(residual)

hist(residual)

Os resultados obtidos corroboraram que no período estudado por Nerlove as empresas da indústria de eletricidade estavam submetidas a substanciais retornos de escala. No entanto, as conclusões de Christensen e Greene sugerem que as firmas ainda não haviam exaurido suas capacidades de ganhos de escala, eis que o intervalo das curvas de custo médio que seria declinante seria maior do que o estipulado por Nerlove. Em outras palavras, foi com a base de 1970 que grande parte das empresas passaram a operar na área de ponto mínimo da curva de custos médios em formato de U. Isto é, entre 1955 e 1970 as empresas do setor da geração de eletricidade, em média, deixaram de funcionar sobre retornos crescentes e passaram a operar sobre retornos constantes de escala. Ademais, o custo de geração de eletricidade caiu, em termos absolutos, no período. De todo modo, como no decorrer destes 15 anos o tamanho médio das firmas do setor foi modificado, os autores também indicam que a diminuição dos custos não se deu, ao menos majoritariamente, por progresso técnico vinculado a ganhos de escala, pois haveria baixa correlação entre o grau de redução dos custos e o crescimento das firmas no período. Ao notar que um pequeno número de grandes firmas não atua como fator necessário para o alcance da escala eficiente na dualidade custo-produção na geração de eletricidade nos Estados Unidos, os pesquisadores concluíram que políticas pró-concorrenciais não poderiam ser acusadas de prejudicar as economias de escala no setor.

rm(list=ls(all=TRUE))

3 - Production for primary metals industry REFERÊNCIA-BASE: Hildebrand, G.; Liu, T. Manufacturing production functions in the United States. Ithaca, NY: Cornell University Press, 1957.

REFERÊNCIA COMPLEMENTAR: Aigner, D.; Lovell, C. A. K.; Schmidt, P. Formulation and estimation of stochastic frontier production function models. Journal of Econometrics, vol. 6, pp. 21-37, 1977.

data

data("SIC33", package = "AER")

Estudando as funções de produção da indústria manufatureira nos Estados Unidos, Hildebrand e Liu (1957) coletaram dados de 1957-1958 para 28 estados, em três variáveis: produto, capital e trabalho. Conforme Aigner, Lovell e Schmidt, que reutilizaram essa base de dados posteriormente, as observações foram coletadas por estabelecimento, sendo Y o valor agregado, L uma medida do insumo trabalho, K o valor bruto do capital imobilizado na planta industrial mais maquinário e equipamentos. Ressalva-se que havia ainda um fator de escala, R, usado para normalizar a variável de capital, que foi omitido no estudo de Greene (2003). Ademais, de acordo com Greene (2003), a 28ª observação levantada estava com informações incompletas, de sorte que a amostra final constituiu-se de 27 estados e as 3 variáveis supracitadas, conforme vislumbra-se na função dimensão da base de dados, abaixo:

objects(SIC33)
## [1] "capital" "labor"   "output"
dim(SIC33)
## [1] 27  3
head(SIC33)
##    output  labor capital
## 1  657.29 162.31  279.99
## 2  935.93 214.43  542.50
## 3 1110.65 186.44  721.51
## 4 1200.89 245.83 1167.68
## 5 1052.68 211.40  811.77
## 6 3406.02 690.61 4558.02

Example 6.2 Translog model

fm_tl <- lm(
  output ~ labor + capital + I(0.5 * labor^2) + I(0.5 * capital^2) + I(labor * capital),
  data = log(SIC33))

Conforme vimos no exercício anterior, uma função de produção especificada em translog relaxa as hipóteses de restrição da função de produção Cobb-Douglas. Especialmente, o pressuposto de elasticidade unitária de substituição entre os insumos é relaxado, ou seja, a função não está mais restrita uma elasticidade de substituição igual a 1 (GREENE, 2003). O modelo de função de produção da indústria de metais primários rodado por Hildebrand e Liu é, igualmente, especificado em translog. A generalização da Cobb-Douglas proposta assume a da seguinte forma:

A Cobb-Douglas, portanto, é um caso específico desta especificação mais geral, quando \(\beta_4 = \beta_5 = \beta_6 = 0\). Assim sendo, foi primeiramente testada esta hipótese (de retorno à Cobb-Douglas), utilizando um teste F. Como o resultado do teste foi de 1,768 e o valor crítico tabelado é superior a 3, não foi rejeitada a hipótese de que a especificação funcional poderia ser de uma Cobb-Douglas.

Cobb-Douglas model

\[ \ln y = \beta_0 + \beta_1 \ln K + \beta_2 \ln L + \beta_3 [\frac{1}{2} \ln K^2]+ \beta_4 [\frac{1}{2} \ln K^2] + \beta_5 \ln KL+ \epsilon \]

fm_cb <- lm(output ~ labor + capital, data = log(SIC33))

Table 6.2 in Greene (2003)

deviance(fm_tl)# Modelo Irrestrito
## [1] 0.6799272
deviance(fm_cb)# Modelo Restrito
## [1] 0.8516337
summary(fm_tl)# Modelo Irrestrito
## 
## Call:
## lm(formula = output ~ labor + capital + I(0.5 * labor^2) + I(0.5 * 
##     capital^2) + I(labor * capital), data = log(SIC33))
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -0.33990 -0.10106 -0.01238  0.04605  0.39281 
## 
## Coefficients:
##                    Estimate Std. Error t value Pr(>|t|)  
## (Intercept)         0.94420    2.91075   0.324   0.7489  
## labor               3.61364    1.54807   2.334   0.0296 *
## capital            -1.89311    1.01626  -1.863   0.0765 .
## I(0.5 * labor^2)   -0.96405    0.70738  -1.363   0.1874  
## I(0.5 * capital^2)  0.08529    0.29261   0.291   0.7735  
## I(labor * capital)  0.31239    0.43893   0.712   0.4845  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.1799 on 21 degrees of freedom
## Multiple R-squared:  0.9549, Adjusted R-squared:  0.9441 
## F-statistic: 88.85 on 5 and 21 DF,  p-value: 2.121e-13
summary(fm_cb)# Modelo Restrito
## 
## Call:
## lm(formula = output ~ labor + capital, data = log(SIC33))
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -0.30385 -0.10119 -0.01819  0.05582  0.50559 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  1.17064    0.32678   3.582  0.00150 ** 
## labor        0.60300    0.12595   4.787 7.13e-05 ***
## capital      0.37571    0.08535   4.402  0.00019 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.1884 on 24 degrees of freedom
## Multiple R-squared:  0.9435, Adjusted R-squared:  0.9388 
## F-statistic: 200.2 on 2 and 24 DF,  p-value: 1.067e-15
vcov(fm_tl)# Modelo Irrestrito
##                    (Intercept)       labor     capital I(0.5 * labor^2)
## (Intercept)         8.47248687 -2.38790338 -0.33129294      -0.08760011
## labor              -2.38790338  2.39652901 -1.23101576      -0.66580411
## capital            -0.33129294 -1.23101576  1.03278652       0.52305244
## I(0.5 * labor^2)   -0.08760011 -0.66580411  0.52305244       0.50039330
## I(0.5 * capital^2) -0.23317345  0.03476689  0.02636926       0.14674300
## I(labor * capital)  0.36354446  0.18311307 -0.22554189      -0.28803386
##                    I(0.5 * capital^2) I(labor * capital)
## (Intercept)               -0.23317345          0.3635445
## labor                      0.03476689          0.1831131
## capital                    0.02636926         -0.2255419
## I(0.5 * labor^2)           0.14674300         -0.2880339
## I(0.5 * capital^2)         0.08562001         -0.1160405
## I(labor * capital)        -0.11604045          0.1926571
vcov(fm_cb)# Modelo Restrito
##             (Intercept)        labor      capital
## (Intercept)  0.10678650 -0.019835398  0.001188850
## labor       -0.01983540  0.015864400 -0.009616201
## capital      0.00118885 -0.009616201  0.007283931

Cobb-Douglas vs. Translog model

anova(fm_cb, fm_tl)
## Analysis of Variance Table
## 
## Model 1: output ~ labor + capital
## Model 2: output ~ labor + capital + I(0.5 * labor^2) + I(0.5 * capital^2) + 
##     I(labor * capital)
##   Res.Df     RSS Df Sum of Sq      F Pr(>F)
## 1     24 0.85163                           
## 2     21 0.67993  3   0.17171 1.7678 0.1841

hypothesis of constant returns

linearHypothesis(fm_cb, "labor + capital = 1")
## Linear hypothesis test
## 
## Hypothesis:
## labor  + capital = 1
## 
## Model 1: restricted model
## Model 2: output ~ labor + capital
## 
##   Res.Df     RSS Df Sum of Sq      F Pr(>F)
## 1     25 0.85574                           
## 2     24 0.85163  1 0.0041075 0.1158 0.7366

Dado que o primeiro teste F inficou que o modelo poderia ser especificado como uma Cobb-Douglas, o segundo teste F testou a hipótese de retornos constantes de escala nesta função restrita. Ou seja, testou se a soma dos parâmetros de trabalho e capital seria igual a 1 (\(\beta_2 + \beta_3 = 1\)). Esta segunda estatística F também indicou que a hipótese não poderia ser rejeitada, isto é, foi consistente com a hipótese de que há retornos constantes de escala. No caso do modelo irrestrito (mais geral, translog) o teste equivalente de retornos constantes seria o de que a soma dos parâmetros \(\beta_2\) e \(\beta_3\) seria igual a 1 (\(\beta_2 + \beta_3 = 1\)) e que, conjuntamente, \(\beta_4 + \beta_5 + 2\beta_6 = 0\). O teste F foi rodado e encontrou um valor calculado inferior ao valor crítico tabelado. Em outras palavras, também na especificação funcional translog, não foi rejeitada a hipótese de existência de retornos constantes de escala. Para fins de comparação visual entre os resultados dos dois modelos (restrito e irrestrito), plotamos abaixo os gráficos de dispersão dos erros de cada um deles:

residual1<-fm_tl$residuals# modelo irrestrito
residual2<-fm_cb$residuals# modelo restrito
hist(residual1)# modelo irrestrito

hist(residual2)# modelo restrito

plot(residual1)# modelo irrestrito

plot(residual2)# modelo restrito

rm(list=ls(all=TRUE))

4 - Cost data for US Airlines

data

data("USAirlines", package = "AER")

REFERÊNCIA:

Greene, W. The Econometric Approach to Efficiency Analysis. In: H. Fried, K. Lovell, and S. Schmidt (eds). The Measurement of Productive Efficiency, Second Edition. Oxford: Oxford University Press, 2007.

O exemplo 7.2 de Greene (2003) trata de uma base de dados que foi retirada de uma base maior fornecida pelo Professor Moshe Kim. A base foi originalmente levantada e construída por Christensen Associates of Madison, Wisconsin. O conjunto de dados original referia-se a um painel de 25 companhias aéreas no período pré-regulação do setor, nas décadas de 1970 e 1980 (especificamente durante os 15 anos decorridos de 1970 a 1984).

Esses dados foram utilizados por Greene (1997) para examinar a eficiência na produção de serviços aeronáuticos. O setor é terreno fértil para estudos empíricos, uma vez que apresenta extensas bases de dados de alta qualidade e também porque as rápidas mudanças mercadológicas ocorridas no setor entre os períodos pré- e pós-regulação são de grande interesse para os economistas.

Durante o período avaliado, algumas das companhias aéreas sofreram fusões e outras entraram em greve, de modo que o número de observações completas foi reduzido. Ao omitir tais reduções, a base ficou confinada a apenas 10 firmas, das quais foram selecionadas 6 para rodar o exemplo 7.2 do livro de Greene (2003). Em outras palavras, em termos de sua dimensão, a base utilizada para rodar o exemplo apresenta 90 observações para 6 firmas no período de 1970-1984. Foram consideradas 6 variáveis na análise, quais sejam:

I = Firm = Companhia aérea;

T = Year = Tempo, relativo ao ano-calendário;

Q = Output = Produção, medida em um número índice de receita de milhagem por passageiro;

C = Cost = Custo total, em U$ 1.000,00;

PF = Price = Preço do combustível; e

LF = Load = Fator de carga ou capacidade, que equivale à capacidade média da frota aérea.

Essas informações podem ser conferidas nas funções de dimensão e de objetos da base de dados, dispostas abaixo:

objects()
## [1] "USAirlines"
dim(USAirlines)
## [1] 90  6
objects(USAirlines) 
## [1] "cost"   "firm"   "load"   "output" "price"  "year"

Example 7.2

fm_full <- lm(log(cost) ~ log(output) + I(log(output)^2) + log(price) + load + year + firm,
              data = USAirlines)
fm_time <- lm(log(cost) ~ log(output) + I(log(output)^2) + log(price) + load + year,
              data = USAirlines)
fm_firm <- lm(log(cost) ~ log(output) + I(log(output)^2) + log(price) + load + firm,
              data = USAirlines)
fm_no <- lm(log(cost) ~ log(output) + I(log(output)^2) + log(price) + load, data = USAirlines)
coef(fm_full)[1:5]
##      (Intercept)      log(output) I(log(output)^2)       log(price) 
##      13.56249268       0.88664650       0.01261288       0.12807832 
##             load 
##      -0.88548260

Tendo como base o modelo irrestrito, primeiramente é feito um teste F para o modelo que considera apenas os efeitos de tempo (e desconsidera os efeitos de firma). Neste caso, o valor calculado do teste F foi de 65,94, um valor acima do valor crítico tabelado. Como a hipótese nula é a de que não há efeitos específicos de firma, o resultado altamente significativo indica que efeitos fixos de firma são estatisticamente relevantes.

anova(fm_full, fm_time)
## Analysis of Variance Table
## 
## Model 1: log(cost) ~ log(output) + I(log(output)^2) + log(price) + load + 
##     year + firm
## Model 2: log(cost) ~ log(output) + I(log(output)^2) + log(price) + load + 
##     year
##   Res.Df     RSS Df Sum of Sq      F    Pr(>F)    
## 1     66 0.17257                                  
## 2     71 1.03470 -5  -0.86213 65.945 < 2.2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Em segundo lugar, é feito o mesmo exercício em comparação ao modelo que considera apenas os efeitos de firma (e desconsidera os efeitos de tempo). Neste caso, o valor calculado foi de apenas 2,61. Por mais que seja um valor absolutamente menor do que o calculado para o caso anterior, continua sendo estatisticamente significante ao nível de 5%, eis que o valor crítico de referência tabelado é de apenas 1,84. Assim sendo, também há evidências estatísticas de que os efeitos específicos de tempo são estatisticamente relevantes.

anova(fm_full, fm_firm)
## Analysis of Variance Table
## 
## Model 1: log(cost) ~ log(output) + I(log(output)^2) + log(price) + load + 
##     year + firm
## Model 2: log(cost) ~ log(output) + I(log(output)^2) + log(price) + load + 
##     firm
##   Res.Df     RSS  Df Sum of Sq      F   Pr(>F)   
## 1     66 0.17257                                 
## 2     80 0.26815 -14 -0.095584 2.6112 0.004582 **
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

De todo modo, cumpre destacar que, ao menos graficamente, os efeitos de tempo apresentam um padrão ascendente bem acentuado e delineado. Isto ocorre, pois o período analisado foi um período de inflação de custos, expressa pelo aumento rápido no preço dos combustíveis. Como foi desconsiderada a última dummy de tempo, referente ao ano-calendário de 1984, os resultados devem ser encarados em termos comparativos frente a este exercício. O padrão crescente dos efeitos-tempo pode ser vislumbrado no gráfico abaixo. Em última instância, os valores estatísticos calculados pelo teste F indicam que a relevância dos efeitos de tempo podem ser menores do que inicialmente seria sugerido pelo gráfico.

plot(1970:1984, c(coef(fm_full)[6:19], 0), type = "n",
     xlab = "Year", ylab = expression(delta(Year)),
     main = "Estimated Year Specific Effects")
grid()
points(1970:1984, c(coef(fm_full)[6:19], 0), pch = 19)

Por fim, o último modelo desconsidera ambos os conjuntos de variáveis binárias específicos de firma e de tempo. Mais uma vez, os resultados indicam que ambos os fatores são estatisticamente relevantes a 5%, uma vez que o valor F calculado é de 22,19.

anova(fm_full, fm_no)
## Analysis of Variance Table
## 
## Model 1: log(cost) ~ log(output) + I(log(output)^2) + log(price) + load + 
##     year + firm
## Model 2: log(cost) ~ log(output) + I(log(output)^2) + log(price) + load
##   Res.Df     RSS  Df Sum of Sq      F    Pr(>F)    
## 1     66 0.17257                                   
## 2     85 1.27492 -19   -1.1023 22.189 < 2.2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Os resultados estatísticos dos testes F sugerem que a melhor especificação funcional para o modelo é a do modelo completo ou irrestrito, em que são considerados tanto os fatores específicos de firma quanto os fatores específicos do ano-calendário.

Para confirmar os achados, o autor ainda roda modelos alternativos de diferença de média e de efeitos fixos. As conclusões anteriores permanecem válidas.

Alternatively, use plm()

Instalar o Pacote *plm*
install.packages("plm")
library("plm")
## Warning: package 'plm' was built under R version 3.1.3
## Loading required package: Formula
## Warning: package 'Formula' was built under R version 3.1.3
usair <- plm.data(USAirlines, c("firm", "year"))
fm_full2 <- plm(log(cost) ~ log(output) + I(log(output)^2) + log(price) + load,
                data = usair, model = "within", effect = "twoways")
fm_time2 <- plm(log(cost) ~ log(output) + I(log(output)^2) + log(price) + load,
                data = usair, model = "within", effect = "time")
fm_firm2 <- plm(log(cost) ~ log(output) + I(log(output)^2) + log(price) + load,
                data = usair, model = "within", effect = "individual")
fm_no2 <- plm(log(cost) ~ log(output) + I(log(output)^2) + log(price) + load,
              data = usair, model = "pooling")
pFtest(fm_full2, fm_time2)
## 
##  F test for twoways effects
## 
## data:  log(cost) ~ log(output) + I(log(output)^2) + log(price) + load
## F = 65.9451, df1 = 5, df2 = 66, p-value < 2.2e-16
## alternative hypothesis: significant effects
pFtest(fm_full2, fm_firm2)
## 
##  F test for twoways effects
## 
## data:  log(cost) ~ log(output) + I(log(output)^2) + log(price) + load
## F = 2.6112, df1 = 14, df2 = 66, p-value = 0.004582
## alternative hypothesis: significant effects
pFtest(fm_full2, fm_no2)
## 
##  F test for twoways effects
## 
## data:  log(cost) ~ log(output) + I(log(output)^2) + log(price) + load
## F = 22.1893, df1 = 19, df2 = 66, p-value < 2.2e-16
## alternative hypothesis: significant effects