Learn R Programming

micEcon (version 0.5-1)

translogEla: Elasticities of a translog Function

Description

Calculate the elasticities of a translog function.

Usage

translogEla( xNames, data, coef, coefCov = NULL, quadHalf = TRUE, 
   dataLogged = FALSE  )

## S3 method for class 'translogEst': elas( object, data = NULL, dataLogged = NULL, \dots )

Arguments

xNames
a vector of strings containing the names of the independent variables.
data
dataframe containing the data; if argument data of elas.translogEst is not specified, the data frame that was used for the estimation is used for calculating elasticities.
coef
vector containing all coefficients: if there are n exogenous variables in xNames, the n+1 alpha coefficients must have names a_0, ..., a_n and the n*(n+1)/2
coefCov
optional covariance matrix of the coefficients: the row names and column names must be the same as the names of coef.
quadHalf
logical. Multiply the quadratic terms by one half?
dataLogged
logical. Are the values in data already logged? If argument dataLogged of elas.translogEst is not specified, the same value as used in translogEst for creating object is us
object
object of class translogEst (returned by translogEst).
...
currently ignored.

Value

  • a list of class translogEla containing following objects:
  • eladata frame containing the elasticities.
  • variancedata frame containing the variances of the elasticities (only if argument coefCov is provided).
  • stdDevdata frame containing the standard deviations of the elasticities (only if argument coefCov is provided).

Details

Shifter variables do not need to be specified, because they have no effect on the elasticities. Hence, you can use this function to calculate elasticities even for translog functions that have been estimated with shifter variables.

See Also

translogEst and translogCalc

Examples

Run this code
data( germanFarms )
   # output quantity:
   germanFarms$qOutput <- germanFarms$vOutput / germanFarms$pOutput
   # quantity of variable inputs
   germanFarms$qVarInput <- germanFarms$vVarInput / germanFarms$pVarInput
   # a time trend to account for technical progress:
   germanFarms$time <- c(1:20)

   # estimate a quadratic production function
   estResult <- translogEst( "qOutput", c( "qLabor", "land", "qVarInput", "time" ),
      germanFarms )

   # calculate production elasticities of all inputs
   estEla <- translogEla( c( "qLabor", "land", "qVarInput", "time" ), 
      data = germanFarms, coef = coef( estResult ), 
      coefCov = vcov( estResult ) )
   # all elasticities
   estEla$ela
   # t-values of all elasticities
   estEla$ela / estEla$stdDev

Run the code above in your browser using DataLab