Title: | Non-Parametric Tests of Parametric Specifications |
---|---|
Description: | Performs non-parametric tests of parametric specifications. Five tests are available. Specific bandwidth and kernel methods can be chosen along with many other options. Allows parallel computing to quickly compute p-values based on the bootstrap. Methods implemented in the package are H.J. Bierens (1982) <doi:10.1016/0304-4076(82)90105-1>, J.C. Escanciano (2006) <doi:10.1017/S0266466606060506>, P.L. Gozalo (1997) <doi:10.1016/S0304-4076(97)86571-2>, P. Lavergne and V. Patilea (2008) <doi:10.1016/j.jeconom.2007.08.014>, P. Lavergne and V. Patilea (2012) <doi:10.1198/jbes.2011.07152>, J.H. Stock and M.W. Watson (2006) <doi:10.1111/j.1538-4616.2007.00014.x>, C.F.J. Wu (1986) <doi:10.1214/aos/1176350142>, J. Yin, Z. Geng, R. Li, H. Wang (2010) <https://www.jstor.org/stable/24309002> and J.X. Zheng (1996) <doi:10.1016/0304-4076(95)01760-7>. |
Authors: | Hippolyte Boucher [aut, cre], Pascal Lavergne [aut] |
Maintainer: | Hippolyte Boucher <[email protected]> |
License: | GPL-2 |
Version: | 1.1.0 |
Built: | 2024-11-17 04:57:41 UTC |
Source: | https://github.com/hippolyteboucher/spetestnp |
STNP
object
Prints the test statistic and p-value of a specification test object of class STNP
## S3 method for class 'STNP' print(x, ...)
## S3 method for class 'STNP' print(x, ...)
x |
An object of class |
... |
Additional print arguments |
No return value, prints the test statistic and p-value
Hippolyte Boucher <[email protected]>
Pascal Lavergne <[email protected]>
SpeTest
is the function which performs a specification test and records it along with all its options in an object of class STNP
summary.STNP
prints a summary of the specification test with all the options used
n <- 100 k <- 2 x <- matrix(rnorm(n*k),ncol=k) y<-1+x%*%(1:k)+rnorm(n) eq<-lm(y~x+0) print(SpeTest(eq=eq,type="icm",nboot=50))
n <- 100 k <- 2 x <- matrix(rnorm(n*k),ncol=k) y<-1+x%*%(1:k)+rnorm(n) eq<-lm(y~x+0) print(SpeTest(eq=eq,type="icm",nboot=50))
SpeTest
tests a parametric specification. It returns the test statistic and its p-value for five different heteroskedasticity-robust nonparametric specification tests
SpeTest(eq, type="icm", rejection="bootstrap", norma="no", boot="wild", nboot=50, para=FALSE, ker="normal",knorm="sd", cch="default", hv="default", nbeta="default", direct="default", alphan="default")
SpeTest(eq, type="icm", rejection="bootstrap", norma="no", boot="wild", nboot=50, para=FALSE, ker="normal",knorm="sd", cch="default", hv="default", nbeta="default", direct="default", alphan="default")
eq |
A fitted model of class |
type |
Test type If If If If If |
rejection |
Rejection rule If If If |
norma |
Normalization of the test statistic If If If |
boot |
Bootstrap method to compute the test p-value If If |
nboot |
Number of bootstraps used to compute the test p-value, by default |
para |
Parallel computing If If |
ker |
Kernel function used in the central matrix and for the nonparametric covariance estimator If If If If |
knorm |
Normalization of the kernel function If If |
cch |
Central matrix kernel bandwidth If If If The user may change the bandwidth when |
hv |
If |
nbeta |
If By |
direct |
If If For ex, By |
alphan |
If |
To perform a nonparametric specification test the only argument needed is a model eq
of class lm
or of class nls
.
But other options can and should be specified: the test type type
, the rejection rule rejection
, the normalization of the test statistic norm
, the bootstrap type boot
and the size of the vector being generated which is equal to the number of bootstrap samples nboot
, whether the vector is generated using parallel computing para
, the central matrix kernel function ker
and its standardization ker
, the bandwidths cch
and hv
. If the user has knowledge of the tests coined by Lavergne and Patilea he may choose a higher number of betas for the hypersphere (which may significantly increase computational time) and an initial "direction" to the hypersphere for the SICM test (none is given by "default"
) or a starting beta for the PALA test (which is the OLS estimator by "default"
if class(eq) = "nls"
).
The statistic can be normalized with a naive estimator of the conditional covariance of its elements as in Zheng (1996), or with a nonparametric estimator of the conditional covariance of its elements as in in Yin, Geng, Li, Wang (2010). The p-value is based either on the wild bootstrap of Wu (1986) or on the smooth conditional moments bootstrap of Gozalo (1997).
SpeTest
returns an object of class
STNP
.
summary
and print
can be used on objects of this class.
An object of class STNP
is a list which contains the following elements:
stat |
The value of the test statistic used in the test |
pval |
The test p-value |
type |
The type of test which was used |
boot |
The type of bootstrap which was used to compute the p-value |
nboot |
The number of bootstrap samples used to compute the p-value |
ker |
The central matrix kernel function which was used |
knorm |
The kernel matrix standardization: |
cch |
The central matrix kernel function bandwidth |
hv |
The nonparametric covariance estimator bandwidth |
nbeta |
The number of directions in the unit hypersphere used to compute the test statistic if |
direct |
The preferred / initial direction in the unit hypersphere if |
alphan |
The weight given to the preferred direction if |
The data used to obtain the fitted model eq
should not contain factors, factor variables should be transformed into dummy variables a priori
Requires the packages stats
(already installed and loaded by default in Rstudio), foreach
, parallel
and doParallel
(if parallel computing is used to generate the test p-value) to be installed
For more information and to be able to use the package to its full potential see the references
Hippolyte Boucher <[email protected]>
Pascal Lavergne <[email protected]>
H.J. Bierens (1982), "Consistent Model Specification Test", Journal of Econometrics, 20 (1), 105-134
J.C. Escanciano (2006), "A Consistent Diagnostic Test for Regression Models using Projections", Economic Theory, 22 (6), 1030-1051
P.L. Gozalo (1997), "Nonparametric Bootstrap Analysis with Applications to Demographic Effects in Demand Functions", Journal of Econometrics, 81 (2), 357-393
P. Lavergne and V. Patilea (2008), "Breaking the Curse of Dimensionality in Nonparametric Testing", Journal of Econometrics, 143 (1), 103-122
P. Lavergne and V. Patilea (2012), "One for All and All for One: Regression Checks with Many Regressors", Journal of Business and Economic Statistics, 30 (1), 41-52
C.F.J. Wu (1986), "Jackknife, bootstrap and other resampling methods in regression analysis (with discussion)", Annals of Statistics, 14 (4), 1261-1350
J. Yin, Z. Geng, R. Li, H. Wang (2010), "Nonparametric covariance model", Statistica Sinica, 20 (1), 469-479
J.X. Zheng (1996), "A Consistent Test of Functional Form via Nonparametric Estimation Techniques", Journal of Econometrics, 75 (2), 263-289
print
and print.STNP
applied to an object of class STNP
print the specification test statistic and its p-value
summary
and summary.STNP
applied to an object of class STNP
print a summary of the specification test with all the options used
SpeTest_Stat
is the function which only returns the specification test statistic
SpeTest_Dist
generates a vector drawn from the distribution of the test statistic under the null hypothesis using the bootstrap
n <- 100 k <- 2 x <- matrix(rnorm(n*k),ncol=k) y<-1+x%*%(1:k)+rnorm(n) eq<-lm(y~x+0) summary(SpeTest(eq=eq,type="icm",norma="naive",boot="smooth")) eq<-nls(out~expla1*a+b*expla2+c,start=list(a=0,b=4,c=2), data=data.frame(out=y,expla1=x[,1],expla2=x[,2])) print(SpeTest(eq=eq,type="icm",norma="naive",boot="smooth"))
n <- 100 k <- 2 x <- matrix(rnorm(n*k),ncol=k) y<-1+x%*%(1:k)+rnorm(n) eq<-lm(y~x+0) summary(SpeTest(eq=eq,type="icm",norma="naive",boot="smooth")) eq<-nls(out~expla1*a+b*expla2+c,start=list(a=0,b=4,c=2), data=data.frame(out=y,expla1=x[,1],expla2=x[,2])) print(SpeTest(eq=eq,type="icm",norma="naive",boot="smooth"))
SpeTest_Dist
generates a vector from the nonparametric specification test statistic distribution under the null hypothesis for one of five different tests using the bootstrap
SpeTest_Dist(eq, type="icm", norma="no", boot="wild", nboot=50, para=FALSE, ker="normal", knorm="sd", cch="default", hv="default", nbeta="default", direct="default", alphan="default")
SpeTest_Dist(eq, type="icm", norma="no", boot="wild", nboot=50, para=FALSE, ker="normal", knorm="sd", cch="default", hv="default", nbeta="default", direct="default", alphan="default")
eq |
A fitted model of class |
type |
Test type If If If If If |
norma |
Normalization of the test statistic If If If |
boot |
Bootstrap type to generate the vector drawn from the distribution under the null hypothesis of the test statistic If If |
nboot |
Size of the vector drawn from the test statistic distribution under the null using the bootstrap, by default |
para |
Parallel computing If If |
ker |
Kernel function used in the central matrix and for the nonparametric covariance estimator If If If If |
knorm |
Normalization of the kernel function If If |
cch |
Central matrix kernel bandwidth If If If The user may change the bandwidth when |
hv |
If |
nbeta |
If By |
direct |
If If For ex, By |
alphan |
If |
To generate a vector from the specification test statistic distribution under the null using the bootstrap the only argument needed is a model eq
of class lm
or of class nls
.
But other options can and should be specified: the test statistic type type
, the normalization of the test statistic norma
, the bootstrap type boot
and the size of the vector being generated which is equal to the number of bootstrap samples nboot
, whether the vector is generated using parallel computing para
, the central matrix kernel function ker
and its standardization knorm
, the bandwidths cch
and hv
. If the user has knowledge of the tests coined by Lavergne and Patilea he may choose a higher number of betas for the hypersphere (which may significantly increase computational time) and an initial "direction" to the hypersphere for the SICM test (none is given by "default"
) or a starting beta for the PALA test (which is the OLS estimator by "default"
if class(eq) = "nls"
).
The statistic can be normalized with a naive estimator of the conditional covariance of its elements as in Zheng (1996), or with a nonparametric estimator of the conditional covariance of its elements as in in Yin, Geng, Li, Wang (2010). The vector is generated either from the wild bootstrap of Wu (1986) or from the smooth conditional moments bootstrap of Gozalo (1997).
SpeTest_Dist
returns a vector of size nboot
which is drawn from the distribution of the test statistic under the null hypothesis using the bootstrap
The data used to obtain the fitted model eq
should not contain factors, factor variables should be transformed into dummy variables a priori
Requires the packages stats
(already installed and loaded by default in Rstudio), foreach
, parallel
and doParallel
(if parallel computing is used to generate the vector) to be installed
For more information and to be able to use the package to its full potential see the references
Hippolyte Boucher <[email protected]>
Pascal Lavergne <[email protected]>
H.J. Bierens (1982), "Consistent Model Specification Test", Journal of Econometrics, 20 (1), 105-134
J.C. Escanciano (2006), "A Consistent Diagnostic Test for Regression Models using Projections", Economic Theory, 22 (6), 1030-1051
P.L. Gozalo (1997), "Nonparametric Bootstrap Analysis with Applications to Demographic Effects in Demand Functions", Journal of Econometrics, 81 (2), 357-393
P. Lavergne and V. Patilea (2008), "Breaking the Curse of Dimensionality in Nonparametric Testing", Journal of Econometrics, 143 (1), 103-122
P. Lavergne and V. Patilea (2012), "One for All and All for One: Regression Checks with Many Regressors", Journal of Business and Economic Statistics, 30 (1), 41-52
C.F.J. Wu (1986), "Jackknife, bootstrap and other resampling methods in regression analysis (with discussion)", Annals of Statistics, 14 (4), 1261-1350
J. Yin, Z. Geng, R. Li, H. Wang (2010), "Nonparametric covariance model", Statistica Sinica, 20 (1), 469-479
J.X. Zheng (1996), "A Consistent Test of Functional Form via Nonparametric Estimation Techniques", Journal of Econometrics, 75 (2), 263-289
SpeTest
is the function which performs a specification test and records it along with all its options in an object of class STNP
SpeTest_Stat
is the function which only returns the specification test statistic
n <- 100 k <- 2 x <- matrix(rnorm(n*k),ncol=k) y<-1+x%*%(1:k)+rnorm(n) eq<-lm(y~x+0) SpeTest_Dist(eq=eq,type="zheng",boot="wild",nboot=10) eq<-nls(out~expla1*a+b*expla2+c,start=list(a=0,b=4,c=2), data=data.frame(out=y,expla1=x[,1],expla2=x[,2])) SpeTest_Dist(eq=eq,type="zheng",boot="wild",nboot=20)
n <- 100 k <- 2 x <- matrix(rnorm(n*k),ncol=k) y<-1+x%*%(1:k)+rnorm(n) eq<-lm(y~x+0) SpeTest_Dist(eq=eq,type="zheng",boot="wild",nboot=10) eq<-nls(out~expla1*a+b*expla2+c,start=list(a=0,b=4,c=2), data=data.frame(out=y,expla1=x[,1],expla2=x[,2])) SpeTest_Dist(eq=eq,type="zheng",boot="wild",nboot=20)
SpeTest
computes the nonparametric specification test statistic for one of five different tests
SpeTest_Stat(eq, type="icm", norma="no", ker="normal", knorm="sd", cch="default", hv="default", nbeta="default", direct="default", alphan="default")
SpeTest_Stat(eq, type="icm", norma="no", ker="normal", knorm="sd", cch="default", hv="default", nbeta="default", direct="default", alphan="default")
eq |
A fitted model of class |
type |
Test statistic type If If If If If |
norma |
Normalization of the test statistic If If If |
ker |
Kernel function used in the central matrix and for the nonparametric covariance estimator If If If If |
knorm |
Normalization of the kernel function If If |
cch |
Central matrix kernel bandwidth If If If The user may change the bandwidth when |
hv |
If |
nbeta |
If By |
direct |
If If For ex, By |
alphan |
If |
To compute the specification test statistic the only argument needed is a model eq
of class lm
or of class nls
.
But other options can and should be specified: the test statistic type type
, the normalization of the test statistic norma
, the central matrix kernel function ker
and its standardization ker
, the bandwidths cch
and hv
. If the user has knowledge of the tests coined by Lavergne and Patilea he may choose a higher number of betas for the hypersphere (which may significantly increase computational time) and an initial "direction" to the hypersphere for the SICM test (none is given by "default"
) or a starting beta for the PALA test (which is the OLS estimator by "default"
if class(eq) = "nls"
).
The statistic can be normalized with a naive estimator of the conditional covariance of its elements as in Zheng (1996), or with a nonparametric estimator of the conditional covariance of its elements as in in Yin, Geng, Li, Wang (2010).
SpeTest_Stat
returns the nonparametric specification test statistic
The data used to obtain the fitted model eq
should not contain factors, factor variables should be transformed into dummy variables a priori
Requires the packages stats
(already installed and loaded by default in Rstudio), foreach
, parallel
and doParallel
(if parallel computing is used to generate the vector) to be installed
For more information and to be able to use the package to its full potential see the references
Hippolyte Boucher <[email protected]>
Pascal Lavergne <[email protected]>
H.J. Bierens (1982), "Consistent Model Specification Test", Journal of Econometrics, 20 (1), 105-134
J.C. Escanciano (2006), "A Consistent Diagnostic Test for Regression Models using Projections", Economic Theory, 22 (6), 1030-1051
P.L. Gozalo (1997), "Nonparametric Bootstrap Analysis with Applications to Demographic Effects in Demand Functions", Journal of Econometrics, 81 (2), 357-393
P. Lavergne and V. Patilea (2008), "Breaking the Curse of Dimensionality in Nonparametric Testing", Journal of Econometrics, 143 (1), 103-122
P. Lavergne and V. Patilea (2012), "One for All and All for One: Regression Checks with Many Regressors", Journal of Business and Economic Statistics, 30 (1), 41-52
C.F.J. Wu (1986), "Jackknife, bootstrap and other resampling methods in regression analysis (with discussion)", Annals of Statistics, 14 (4), 1261-1350
J. Yin, Z. Geng, R. Li, H. Wang (2010), "Nonparametric covariance model", Statistica Sinica, 20 (1), 469-479
J.X. Zheng (1996), "A Consistent Test of Functional Form via Nonparametric Estimation Techniques", Journal of Econometrics, 75 (2), 263-289
SpeTest
is the function which performs a specification test and records it along with all its options in an object of class STNP
SpeTest_Dist
generates a vector drawn from the distribution of the test statistic under the null hypothesis using the bootstrap
n <- 100 k <- 2 x <- matrix(rnorm(n*k),ncol=k) y<-1+x%*%(1:k)+rnorm(n) eq<-lm(y~x+0) SpeTest_Stat(eq=eq,type="icm") eq<-nls(out~expla1*a+b*expla2+c,start=list(a=0,b=4,c=2), data=data.frame(out=y,expla1=x[,1],expla2=x[,2])) SpeTest_Stat(eq=eq,type="icm")
n <- 100 k <- 2 x <- matrix(rnorm(n*k),ncol=k) y<-1+x%*%(1:k)+rnorm(n) eq<-lm(y~x+0) SpeTest_Stat(eq=eq,type="icm") eq<-nls(out~expla1*a+b*expla2+c,start=list(a=0,b=4,c=2), data=data.frame(out=y,expla1=x[,1],expla2=x[,2])) SpeTest_Stat(eq=eq,type="icm")
STNP
object
Prints a summary of a specification test object of class STNP
with all the options used, including if options were "default"
## S3 method for class 'STNP' summary(object, ...)
## S3 method for class 'STNP' summary(object, ...)
object |
An object of class |
... |
Additional summary arguments |
No return value, prints a summary of the test
Hippolyte Boucher <[email protected]>
Pascal Lavergne <[email protected]>
SpeTest
is the function which performs a specification test and records it along with all its options in an object of class STNP
print.STNP
prints the specification test statistic and p-value only
n <- 100 k <- 2 x <- matrix(rnorm(n*k),ncol=k) y<-1+x%*%(1:k)+rnorm(n) eq<-lm(y~x+0) summary(SpeTest(eq=eq,type="icm",norma="np"))
n <- 100 k <- 2 x <- matrix(rnorm(n*k),ncol=k) y<-1+x%*%(1:k)+rnorm(n) eq<-lm(y~x+0) summary(SpeTest(eq=eq,type="icm",norma="np"))