snqProfitEst             package:micEcon             R Documentation

_E_s_t_i_m_a_t_i_o_n _o_f _a _S_N_Q _P_r_o_f_i_t _f_u_n_c_t_i_o_n

_D_e_s_c_r_i_p_t_i_o_n:

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

_U_s_a_g_e:

     snqProfitEst( pNames, qNames, fNames = NULL, ivNames = NULL,
        data, form = 0, base = 1,
        weights = snqProfitWeights( pNames, qNames, data, "DW92", base = base ),
        method = ifelse( is.null( ivNames ), "SUR", "3SLS" ), ...  )

_A_r_g_u_m_e_n_t_s:

  pNames: a vector of strings containing the names of netput prices.

  qNames: a vector of strings containing the names of netput quantities
          (inputs must be negative).

  fNames: an optional vector of strings containing the names of the
          quantities of (quasi-)fix inputs.

 ivNames: 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).

 weights: vector of weights of the prices for normalization.

  method: the estimation method (passed to 'systemfit').

     ...: arguments passed to 'systemfit'

_D_e_t_a_i_l_s:

     The Symmetric Normalized Quadratic (SNQ) profit function is
     defined as follows (this functional form is used if argument
     'form' equals 0):

 pi ( p, z ) = 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} = <=ft. 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 ( p, z ) = 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.

_V_a_l_u_e:

     a list of class 'snqProfitEst' containing following objects: 

    coef: a 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.

     ela: matrix with the price elasticities at mean prices and mean
          quantities.

 hessian: hessian matrix of the profit function with respect to prices
          evaluated at mean prices.

convexity: logical. Convexity of the profit function.

      r2: R^2-values of all netput equations.

     est: estimation results returned by 'systemfit'.

 weights: the weights of prices used for normalization.

normPrice: vector used for normalization of prices.

 estData: data frame used for estimation (contains the (scaled) netput
          prices, (scaled) netput quantities, (not scaled) fix inputs
          and the price index used for normalization.

  fitted: data frame that contains the fitted netput quantities and the
          fitted profit.

    form: the functional form (see details).

  pMeans: means of the (scaled) netput prices.

  qMeans: means of the (scaled) netput quantities.

  fMeans: means of the (quasi-)fix input quantities.

_A_u_t_h_o_r(_s):

     Arne Henningsen ahenningsen@agric-econ.uni-kiel.de

_R_e_f_e_r_e_n_c_e_s:

     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.

_S_e_e _A_l_s_o:

     'snqProfitEla' and 'snqProfitWeights'.

_E_x_a_m_p_l_e_s:

        data( germanFarms )
        germanFarms$qOutput   <- germanFarms$vOutput / germanFarms$pOutput
        germanFarms$qVarInput <- -germanFarms$vVarInput / germanFarms$pVarInput
        germanFarms$qLabor    <- -germanFarms$qLabor
        pNames <- c( "pOutput", "pVarInput", "pLabor" )
        qNames <- c( "qOutput", "qVarInput", "qLabor" )

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

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

