ptReg {ImpShrinkage} | R Documentation |
The Preliminary Test Estimator
Description
This function calculates the preliminary test. When the error has a normal distribution, the test statistic is given by
and, if the error has a non-normal distribution, is given by
where denotes an indicator function and
-
is the unrestricted estimator; See
unrReg
. -
is the restricted estimator; See
resReg
. -
is the test statistic. See
teststat
; -
is the upper
level critical value of
-distribution with
degrees of freedom, calculated using
qf
; -
is the upper
level critical value of
-distribution with
degree of freedom, calculated using
qchisq
; -
: the significance level.
Usage
ptReg(X, y, H, h, alpha, is_error_normal = FALSE)
Arguments
X |
Matrix with input observations, of dimension |
y |
Vector with response observations of size |
H |
A given |
h |
A given |
alpha |
A given significance level. |
is_error_normal |
logical value indicating whether the errors follow
a normal distribution. If |
Details
The corresponding estimator of is
Value
An object of class preliminaryTest
is a list containing at least the following components:
coef
A named vector of coefficients.
residuals
The residuals, that is, the response values minus fitted values.
s2
The estimated variance.
fitted.values
The fitted values.
References
Saleh, A. K. Md. Ehsanes. (2006). Theory of Preliminary Test and Stein‐Type Estimation With Applications, Wiley.
Kaciranlar, S., Akdeniz, S. S. F., Styan, G. P. & Werner, H. J. (1999). A new biased estimators in linear regression and detailed analysis of the widely-analysed dataset on portland cement. Sankhya, Series B, 61(3), 443-459.
Kibria, B. M. Golam (2005). Applications of Some Improved Estimators in Linear Regression, Journal of Modern Applied Statistical Methods, 5(2), 367- 380.
Examples
n_obs <- 100
p_vars <- 5
beta <- c(2, 1, 3, 0, 5)
simulated_data <- simdata(n = n_obs, p = p_vars, beta)
X <- simulated_data$X
y <- simulated_data$y
p <- ncol(X)
# H beta = h
H <- matrix(c(1, 1, -1, 0, 0, 1, 0, 1, 0, -1, 0, 0, 0, 1, 0), nrow = 3, ncol = p, byrow = TRUE)
h <- rep(0, nrow(H))
ptReg(X, y, H, h, alpha = 0.05)
# H beta != h
p <- ncol(X)
H <- matrix(c(1, 1, -1, 0, 0, 1, 0, 1, 0, -1, 0, 0, 0, 1, 0), nrow = 3, ncol = p, byrow = TRUE)
h <- rep(1, nrow(H))
ptReg(X, y, H, h, alpha = 0.05)
data(cement)
X <- as.matrix(cbind(1, cement[, 1:4]))
y <- cement$y
# Based on Kaciranlar et al. (1999)
H <- matrix(c(0, 1, -1, 1, 0), nrow = 1, ncol = 5, byrow = TRUE)
h <- rep(0, nrow(H))
ptReg(X, y, H, h, alpha = 0.05)
# Based on Kibria (2005)
H <- matrix(c(0, 1, -1, 1, 0, 0, 0, 1, -1, -1, 0, 1, -1, 0, -1), nrow = 3, ncol = 5, byrow = TRUE)
h <- rep(0, nrow(H))
ptReg(X, y, H, h, alpha = 0.05)