| translogCheckMono {micEcon} | R Documentation |
Monotonicity of a Translog Function
Description
Check monotonicity of a translog function.
Usage
translogCheckMono( xNames, data, coef, increasing = TRUE,
strict = FALSE, dataLogged = FALSE,
tol = 10 * .Machine$double.eps )
## S3 method for class 'translogCheckMono'
print( x, ... )
## S3 method for class 'translogCheckMono'
summary( object, ... )
## S3 method for class 'summary.translogCheckMono'
print( x, ... )
Arguments
xNames |
a vector of strings containing the names of the independent variables. |
data |
dataframe containing the data. |
coef |
vector containing all coefficients. |
increasing |
single logical value or vector of logical values
of the same length as argument |
strict |
logical. Check for strict (TRUE) or non-strict (default, FALSE) monotonicity? |
dataLogged |
logical. Are the values in |
tol |
tolerance level for checking non-strict monotonicity:
values between |
x |
an object returned by |
object |
an object returned by |
... |
currently not used. |
Details
Function translogCheckMono internally calls
function translogDeriv
and then checks if the derivatives have the sign
specified in argument increasing.
Function translogCheckMono does not have an argument
shifterNames, because shifter variables do not affect
the monotonicity conditions of the eplanatory variables
defined in Argument xNames.
Therefore, translogCheckMono automatically removes
all coefficients of the shifter variables
before it calls translogDeriv.
Value
translogCheckMono returns a list of class translogCheckMono
containing following objects:
obs |
a vector indicating whether monotonicity is fulfilled at each observation. |
exog |
data frame indicating whether monotonicity is fulfilled for each exogenous variable at each observation. |
increasing |
argument |
strict |
argument |
Author(s)
Arne Henningsen
See Also
translogEst, translogDeriv,
and translogCheckCurvature
Examples
data( germanFarms )
# output quantity:
germanFarms$qOutput <- germanFarms$vOutput / germanFarms$pOutput
# quantity of variable inputs
germanFarms$qVarInput <- germanFarms$vVarInput / germanFarms$pVarInput
# a time trend to account for technical progress:
germanFarms$time <- c(1:20)
# estimate a translog production function
estResult <- translogEst( "qOutput", c( "qLabor", "land", "qVarInput", "time" ),
germanFarms )
# check whether the production function is monotonically increasing
# in all inputs
test <- translogCheckMono( xNames = c( "qLabor", "land", "qVarInput", "time" ),
data = germanFarms, coef = coef( estResult ) )
test
summary( test )
# check whether the production function is monotonically decreasing
# in time and monotonically increasing in all other inputs
test <- translogCheckMono( c( "qLabor", "land", "qVarInput", "time" ),
germanFarms, coef( estResult ), increasing = c( TRUE, TRUE, TRUE, FALSE ) )
test
summary( test )