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.
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.
Details
Currently, aidsElas and elas.aidsEst can calculate
elasticities only for models without demand shifters.
However, the user can calculate elasticies for models with demand shifters
by removing the coefficients of the demand shifters
(delta_ij, coef$delta),
adjusting the coefficients alpha_i (coef$alpha)
‘by hand’,
and then calling aidsElas.
The alpha_i coefficients should be adjusted by
alpha_i^* = alpha_i + sum(j=1 to m) delta_ij z_j for all i=1,...,n,
where alpha_i^* are the adjusted
alpha_i coefficients,
n is the number of goods,
m is the number of demand shifters,
delta_ij are the coefficients of the demand shifters, and
z_j is the j's demand shifter.
Hence, the adjusted coefficients alpha_i^* depend
on the values of the demand shifters z;
you could, e.g., calculate different sets of elasticities
for different values of z
or you could use the means, medians, or modal values of z.
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.
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.
Author(s)
Arne Henningsen
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
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 )