| nlWaldtest {nlWaldTest} | R Documentation |
Nonlinear restriction(s) Wald test
Description
Tests restriction(s) on model parameters of the form R(b)=q, where R is vector or scalar valued (non)linear function of b, the vector of model parameters, and q is numeric vector or scalar. Delta method is used for covariance matrix. Applicable after any model provided parameters estimates and their covariance matrix are available.
Usage
nlWaldtest(obj = NULL, texts, rhss = NULL, coeff = NULL,
Vcov = NULL, df2 = NULL, x = NULL)
# Standard:
# nlWaldtest(obj, texts) # Chi square test
# nlWaldtest(obj, texts, df2 = T) # F test
# Force different covariance matrix:
# nlWaldtest(obj, texts, Vcov = vcovHC(obj))
# If coef(obj) and vcov(obj) are not available
# nlWaldtest(texts = restrictions, coeff = vector, Vcov = matrix)
# Backward compatibility:
# nlWaldtest(obj, texts, rhss)
Arguments
obj |
model object of any class, for which |
texts |
left-side(s) of normalized restriction(s), R(b), as string or vector of strings.
Multiple restrictions can be inputted as a character vector or as a character,
separated by semicolon. Right-hand sides can be included either separated
by "=", or substracted, e.g. |
rhss |
right-side(s) of normalized restriction(s) as number or vector. Retained mostly for backward compatibility. Set to zero(s), if missing. |
coeff |
vector of parameter estimates. If missing, it is set to |
Vcov |
covariance matrix of parameters. If missing, it is set to |
df2 |
defines the type of the test. By default, Chi square test is performed. To
perfom F test one can use |
x |
number, or numeric vector. Provides a way to supply cumbersome coefficients
into restrictions, e.g. |
Details
The test should be applicable after (almost) any regression-type model, estimated using cross-section, time series, or panel data. If there are no methods for coef(obj) and/or vcov(obj), coeff and Vcov arguments should be inputted directly. To realize the delta-method, the function first tries to compute analytical derivatives using deriv. If failed, it computes numerical derivatives, calling numericDeriv.
Value
an object of "htest" class.
Author(s)
Oleh Komashko
References
Greene, W.H. (2011). Econometric Analysis, 7th edition. Upper Saddle River, NJ: Prentice Hall
See Also
Examples
set.seed(13)
x1<-rnorm(30);x2<-rnorm(30);x3<-rnorm(30);y<-rnorm(30)
set.seed(NULL)
lm1<-lm(y~x1+x2+x3)
nlConfint(lm1, "b[2]^3+b[3]*b[1];b[2]")
nlWaldtest(lm1,"a[2]^3+a[3]*a[1] = x[1]; a[2]", x = -0.07)
nlWaldtest(lm1,c("b[2]^3+b[3]*b[1]+0.07", "b[2]"))
# Reproduce example in EVievs 8 Users Guide II, pp. 149-151.
## Not run:
require(nlme)
nl1<-nls(log(q)~c1+c2*log(c3*(k^c4)+(1-c3)*(l^c4)),
data=CESdata,start=list(c1=-2.6,c2=1.8,c3=0.0001,c4=-6),
nls.control(maxiter = 100, tol = 1e-05,minFactor = 1/2^15))
nlWaldtest(nl1,"b[2]-1/b[4]",0)
nlWaldtest(nl1,"b[2]*b[4]",1)
## End(Not run)