Learn R Programming

micEconAids (version 0.6-20)

aidsElas: Elasticities of the AIDS model

Description

These functions calculate and print the demand elasticities of an AIDS model.

Usage

aidsElas( coef, prices = NULL, shares = NULL, totExp = NULL,
      method = "AIDS", priceIndex = "TL", basePrices = NULL, baseShares = NULL,
      quantNames = NULL, priceNames = NULL, shifterValues = NULL, 
      coefCov = NULL, df = NULL )

# S3 method for aidsEst elas( object, method = NULL, observedShares = FALSE, … )

# S3 method for aidsElas print( x, … )

Arguments

coef

a list containing the coefficients alpha, beta and gamma.

prices

a vector of the prices at which the elasticities should be calculated.

shares

a vector of the shares at which the elasticities should be calculated.

totExp

total expenditure at which the elasticities should be calculated.

method

the elasticity formula to be used (see details).

priceIndex

the price index (see details).

basePrices

a vector specifying the base prices for the Paasche, Laspeyres, and Tornqvist price index.

baseShares

a vector specifying the base expenditure shares for the Laspeyres, simplified Laspeyres, and Tornqvist index.

quantNames

an optional vector of strings containing the names of the quantities to label elasticities.

priceNames

an optional vector of strings containing the names of the prices to label elasticities.

shifterValues

a vector of values of the shifter variables, at which the elasticities should be calculated.

coefCov

variance covariance matrix of the coefficients (optional).

df

degrees of freedom to calculate P-values of the elasticities (optional).

object

an object of class aidsEst.

observedShares

logical. Using observed shares for calculating the demand elasticities?

x

an object of class aidsElas.

additional arguments of elas.aidsEst are passed to aidsEla; additional arguments of print.aidsElas are currently ignored.

Value

a list of class aidsElas containing following elements:

method

the elasticity formula used to calculate these elasticities.

priceIndex

the price index used (see details).

df

degrees of freedom to calculate P-values of the elasticities (only if argument df is provided).

exp

vector of expenditure elasticities.

hicks

matrix of Hicksian (compensated) price elasticities.

marshall

matrix of Marshallian (uncompensated) price elasticities.

allVcov

variance covariance matrix of all elasticities.

expVcov

variance covariance matrix of the expenditure elasticities.

hicksVcov

variance covariance matrix of the Hicksian (compensated) price elasticities.

marshallVcov

variance covariance matrix of the Marshallian (uncompensated) price elasticities.

expStEr

standard errors of the expenditure elasticities.

hicksStEr

standard errors of the Hicksian (compensated) price elasticities.

marshallStEr

standard errors of the Marshallian (uncompensated) price elasticities.

expTval

t-values of the expenditure elasticities.

hicksTval

t-values of the Hicksian (compensated) price elasticities.

marshallTval

t-values of the Marshallian (uncompensated) price elasticities.

expPval

P-values of the expenditure elasticities.

hicksPval

P-values of the Hicksian (compensated) price elasticities.

marshallPval

P-values of the Marshallian (uncompensated) price elasticities.

Details

Argument priceIndex has two effects: first it determines the price index that is used for calculating (fitted) expenditure shares, if argument shares is not provided (see aidsCalc); second it determines which version of the formulas for calculating demand elasticities of the LA-AIDS are used, because formulas B1/LA, B2, and Go/Ch have different versions depending on the price index.

elas.aidsEst is a wrapper function to aidsElas that extracts the estimated coefficients (coef), mean expenditure shares (wMeans), mean prices (pMeans), names of the prices (priceNames), estimated coefficient variance covariance matrix (coef$allcov), and degrees of freedom (est$df) from the object of class aidsEst and passes them to aidsElas. If argument method in elas.aidsEst is not specified, the default value depends on the estimation method. If the demand system was estimated by the linear approximation (LA), the default method is 'Ch'. If the demand system was estimated by the iterative linear least squares estimator (ILLE), the default method is 'AIDS'.

At the moment the elasticity formulas of the orginal AIDS (AIDS), the formula of Goddard (1983) or Chalfant (1987) (Go or Ch), the formula of Eales and Unnevehr (1988) (EU), the formula of Green and Alston (1990) or the first of Buse (1994) (GA or B1) and the second formula of Buse (1994) (B2) are implemented.

The variance covariance matrices of the elasticities are calculated using the formula of Klein (1953, p. 258) (also known as the delta method). At the moment this is implemented only for the elasticity formulas of the orginal AIDS.

References

Chalfant, J.A. (1987) A Globally Flexible, Almost Ideal Demand System. Journal of Business and Economic Statistics, 5, p. 233-242.

Deaton, A.S. and J. Muellbauer (1980) An Almost Ideal Demand System. American Economic Review, 70, p. 312-326.

Eales J.S. and L.J. Unnevehr (1988) Demand for beef and chicken products: separability and structural change. American Journal of Agricultural Economics, 70, p. 521-532.

Klein L.R. (1953) A Textbook of Econometrics. Row, Petersen and Co., New York.

See Also

aidsEst

Examples

Run this code
# NOT RUN {
   data( Blanciforti86 )
   # Data on food consumption are available only for the first 32 years
   Blanciforti86 <- Blanciforti86[ 1:32, ]

   estResult <- aidsEst( c( "pFood1", "pFood2", "pFood3", "pFood4" ),
      c( "wFood1", "wFood2", "wFood3", "wFood4" ), "xFood",
      data = Blanciforti86 )
   wMeans <- colMeans( Blanciforti86[ , c( "wFood1", "wFood2",
      "wFood3", "wFood4" ) ] )
   aidsElas( estResult$coef, shares = wMeans, method = "Ch",
      priceIndex = "S" )

   ## Repeating the evaluation of different elasticity formulas of
   ## Green & Alston (1990)
   priceNames <- c( "pFood1", "pFood2", "pFood3", "pFood4" )
   shareNames <- c( "wFood1", "wFood2", "wFood3", "wFood4" )

   # AIDS estimation and elasticities
   estResultA <- aidsEst( priceNames, shareNames, "xFood",
      data = Blanciforti86[ -1, ],
      method = "IL", maxiter = 100 )
   diag( elas( estResultA, method = "AIDS" )$marshall )
   summary( elas( estResultA, method = "AIDS" ) )

   # LA-AIDS estimation
   estResultLA <- aidsEst( priceNames, shareNames, "xFood",
      data = Blanciforti86, priceIndex = "SL", maxiter = 100 )

   # LA-AIDS + formula of AIDS
   diag( elas( estResultLA, method = "AIDS" )$marshall )

   # LA-AIDS + formula of Eales + Unnevehr
   diag( elas( estResultLA, method = "EU" )$marshall )

   # LA-AIDS + formula of Goddard or Chalfant:
   diag( elas( estResultLA, method = "Go" )$marshall )
   diag( elas( estResultLA, method = "Ch" )$marshall )

   # LA-AIDS + formula of Green + Alston (= 1st of Buse):
   diag( elas( estResultLA, method = "GA" )$marshall )
# }

Run the code above in your browser using DataLab