snqProfitEla {micEconSNQP} | R Documentation |
Price Elasticities of SNQ Profit function
Description
Calculates the Price Elasticities of a Symmetric Normalized Quadratic (SNQ) profit function.
Usage
snqProfitEla( beta, prices, quant, weights,
scalingFactors = rep( 1, length( weights ) ),
coefVcov = NULL, df = NULL )
Arguments
beta |
matrix of estimated |
prices |
vector of netput prices at which the elasticities should be calculated. |
quant |
vector of netput quantities at which the elasticities should be calculated. |
weights |
vector of weights of prices used for normalization. |
scalingFactors |
factors to scale prices (and quantities). |
coefVcov |
variance covariance matrix of the coefficients (optional). |
df |
degrees of freedom to calculate P-values of the elasticities (optional). |
Value
a list of class snqProfitEla
containing following elements:
ela |
matrix of the price elasticities. |
vcov |
variance covariance matrix of the price elasticities. |
stEr |
standard errors of the price elasticities. |
tval |
t-values of the price elasticities. |
pval |
P-values of the price elasticities. |
Note
A price elasticity is defined as
E_{ij} = \frac{ \displaystyle \frac{ \partial q_i }{ q_i } }
{ \displaystyle \frac{ \partial p_j }{ p_j } } =
\frac{ \partial q_i }{ \partial p_j } \cdot \frac{ p_j }{ q_i }
Thus, e.g. E_{ij}=0.5
means that if the price of netput j (p_j
)
increases by 1%, the quantity of netput i (q_i
) will
increase by 0.5%.
Author(s)
Arne Henningsen
See Also
Examples
# just a stupid simple example
snqProfitEla( matrix(101:109,3,3), c(1,1,1), c(1,-1,-1), c(0.4,0.3,0.3) )
# now with real data
if( requireNamespace( 'micEcon', quietly = TRUE ) ) {
data( germanFarms, package = "micEcon" )
germanFarms$qOutput <- germanFarms$vOutput / germanFarms$pOutput
germanFarms$qVarInput <- -germanFarms$vVarInput / germanFarms$pVarInput
germanFarms$qLabor <- -germanFarms$qLabor
germanFarms$time <- c( 0:19 )
priceNames <- c( "pOutput", "pVarInput", "pLabor" )
quantNames <- c( "qOutput", "qVarInput", "qLabor" )
estResult <- snqProfitEst( priceNames, quantNames, c("land","time"), data=germanFarms )
estResult$ela # price elasticities at mean prices and mean quantities
# price elasticities at the last observation (1994/95)
snqProfitEla( estResult$coef$beta, estResult$data[ 20, priceNames ],
estResult$data[ 20, quantNames ], estResult$weights,
estResult$scalingFactors )
}