Learn R Programming

micEcon (version 0.6-0)

snqProfitEst: Estimation of a SNQ Profit function

Description

Estimation of a Symmetric Normalized Quadratic (SNQ) Profit function.

Usage

snqProfitEst( priceNames, quantNames, fixNames = NULL, instNames = NULL,
   data, form = 0, base = 1, scalingFactors = NULL,
   weights = snqProfitWeights( priceNames, quantNames, data, "DW92", base = base ),
   method = ifelse( is.null( instNames ), "SUR", "3SLS" ), ...)

Arguments

priceNames
a vector of strings containing the names of netput prices.
quantNames
a vector of strings containing the names of netput quantities (inputs must be negative).
fixNames
an optional vector of strings containing the names of the quantities of (quasi-)fixed inputs.
instNames
an optional vector of strings containing the names of instrumental variables (for 3SLS estimation).
data
a data frame containing the data.
form
the functional form to be estimated (see details).
base
the base period(s) for scaling prices (see details).
scalingFactors
factors to scale prices (see details).
weights
vector of weights of the prices for normalization.
method
the estimation method (passed to systemfit).
...
arguments passed to systemfit

Value

  • a list of class snqProfitEst containing following objects:
  • coefa list containing the vectors/matrix of the estimated coefficients: * alpha = $\alpha_i$. * beta = $\beta_{ij}$. * delta = $\delta_{ij}$ (only if quasi-fix inputs are present). * gamma = $\gamma_{ij}$ (only if quasi-fix inputs are present). * allCoef = vector of all coefficients. * allCoefCov = covariance matrix of all coefficients. * stats = all coefficients with standard errors, t-values and p-values. * liCoef = vector of linear independent coefficients. * liCoefCov = covariance matrix of linear independent coefficients.
  • elaa list of class snqProfitEla that contains (amongst others) the price elasticities at mean prices and mean quantities (see snqProfitEla).
  • fixElamatrix of the fixed factor elasticities at mean prices and mean quantities.
  • hessianhessian matrix of the profit function with respect to prices evaluated at mean prices.
  • convexitylogical. Convexity of the profit function.
  • r2$R^2$-values of all netput equations.
  • estestimation results returned by systemfit.
  • weightsthe weights of prices used for normalization.
  • normPricevector used for normalization of prices.
  • datadata frame of originally supplied data.
  • fitteddata frame that contains the fitted netput quantities and the fitted profit.
  • pMeansmeans of the scaled netput prices.
  • qMeansmeans of the scaled netput quantities.
  • fMeansmeans of the (quasi-)fixed input quantities.
  • priceNamesa vector of strings containing the names of netput prices.
  • quantNamesa vector of strings containing the names of netput quantities (inputs must be negative).
  • fixNamesan optional vector of strings containing the names of the quantities of (quasi-)fixed inputs.
  • instNamesan optional vector of strings containing the names of instrumental variables (for 3SLS estimation).
  • formthe functional form (see details).
  • basethe base period(s) for scaling prices (see details).
  • weightsvector of weights of the prices for normalization.
  • scalingFactorsfactors to scale prices (and quantities).
  • methodthe estimation method.

Details

The Symmetric Normalized Quadratic (SNQ) profit function is defined as follows (this functional form is used if argument form equals 0): $$\pi \left( p, z \right) = \sum_{i=1}^{n} \alpha_{i} p_{i} + \frac{1}{2} w^{-1} \sum_{i=1}^{n} \sum_{j=1}^{n} \beta_{ij} p_{i} p_{j} + \sum_{i=1}^{n} \sum_{j=1}^{m} \delta_{ij} p_{i} z_{j} + \frac{1}{2} w \sum_{i=1}^{m} \sum_{j=1}^{m} \gamma_{ij} z_{i} z_{j}$$ with $\pi$ = profit, $p_i$ = netput prices, $z_i$ = quantities of fixed inputs, $w=\sum_{i=1}^{n}\theta_{i}p_{i}$ = price index for normalization, $\theta_i$ = weights of prices for normalization, and $\alpha_i$, $\beta_{ij}$, $\delta_{ij}$ and $\gamma_{ij}$ = coefficients to be estimated. The netput equations (output supply in input demand) can be obtained by Hotelling's Lemma ($q_{i} = \left. \partial \pi \right/ \partial p_{i}$): $$x_{i} = \alpha_{i} + w^{-1} \sum_{j=1}^{n} \beta_{ij} p_{j} - \frac{1}{2} \theta_{i} w^{-2} \sum_{j=1}^{n} \sum_{k=1}^{n} \beta_{jk} p_{j} p_{k} + \sum_{j=1}^{m} \delta_{ij} z_{j} + \frac{1}{2} \theta_{i} \sum_{j=1}^{m} \sum_{k=1}^{m} \gamma_{jk} z_{j} z_{k}$$ In my experience the fit of the model is sometimes not very good, because the effect of the fixed inputs is forced to be proportional to the weights for price normalization $\theta_i$. In this cases I use following extended SNQ profit function (this functional form is used if argument form equals 1): $$\pi \left( p, z \right) = \sum_{i=1}^{n} \alpha_{i} p_{i} + \frac{1}{2} w^{-1} \sum_{i=1}^{n} \sum_{j=1}^{n} \beta_{ij} p_{i} p_{j} + \sum_{i=1}^{n} \sum_{j=1}^{m} \delta_{ij} p_{i} z_{j} + \frac{1}{2} \sum_{i=1}^{n} \sum_{j=1}^{m} \sum_{k=1}^{m} \gamma_{ijk} p_i z_{j} z_{k}$$ The netput equations are now: $$x_{i} = \alpha_{i} + w^{-1} \sum_{j=1}^{n} \beta_{ij} p_{j} - \frac{1}{2} \theta_{i} w^{-2} \sum_{j=1}^{n} \sum_{k=1}^{n} \beta_{jk} p_{j} p_{k} + \sum_{j=1}^{m} \delta_{ij} z_{j} + \frac{1}{2} \sum_{j=1}^{m} \sum_{k=1}^{m} \gamma_{ijk} z_{j} z_{k}$$

The prices are scaled that they are unity in the base period or - if there is more than one base period - that the means of the prices over the base periods are unity. The argument base can be either (a) a single number: the row number of the base prices, (b) a vector indicating several observations: The means of these observations are used as base prices, (c) a logical vector with the same length as the data: The means of the observations indicated as 'TRUE' are used as base prices, or (d) NULL: prices are not scaled. If the scaling factors are explicitly specified (argument 'scalingFactors'), the argument 'base' is ignored.

References

Diewert, W.E. and T.J. Wales (1987) Flexible functional forms and global curvature conditions. Econometrica, 55, p. 43-68.

Diewert, W.E. and T.J. Wales (1992) Quadratic Spline Models for Producer's Supply and Demand Functions. International Economic Review, 33, p. 705-722.

Kohli, U.R. (1993) A symmetric normalized quadratic GNP function and the US demand for imports and supply of exports. International Economic Review, 34, p. 243-255.

See Also

snqProfitEla and snqProfitWeights.

Examples

Run this code
data( germanFarms )
   germanFarms$qOutput   <- germanFarms$vOutput / germanFarms$pOutput
   germanFarms$qVarInput <- -germanFarms$vVarInput / germanFarms$pVarInput
   germanFarms$qLabor    <- -germanFarms$qLabor
   priceNames <- c( "pOutput", "pVarInput", "pLabor" )
   quantNames <- c( "qOutput", "qVarInput", "qLabor" )

   estResult <- snqProfitEst( priceNames, quantNames, "land", data = germanFarms )
   estResult$ela   # Oh, that looks bad!

   # it it reasonable to account for technological progress
   germanFarms$time <- c( 0:19 )
   estResult2 <- snqProfitEst( priceNames, quantNames, c("land","time"), data=germanFarms )
   estResult2$ela   # Ah, that looks good!

Run the code above in your browser using DataLab