phansitest | R Documentation |
Simes' test of intersection of individual hypothesis tests (\insertCiteSIMES:86;textualplm) applied to panel unit root tests as suggested by \insertCiteHANCK:13;textualplm.
phansitest(object, alpha = 0.05)
## S3 method for class 'phansitest'
print(x, cutoff = 10L, ...)
object |
either a numeric containing p-values of individual unit root
test results (does not need to be sorted) or a suitable |
alpha |
numeric, the pre-specified significance level (defaults to |
x |
an object of class |
cutoff |
integer, cutoff value for printing of enumeration of individuals with rejected individual H0, for print method only, |
... |
further arguments (currently not used). |
Simes' approach to testing is combining p-values from single hypothesis tests with a global (intersected) hypothesis. \insertCiteHANCK:13;textualplm mentions it can be applied to any panel unit root test which yields a p-value for each individual series. The test is robust versus general patterns of cross-sectional dependence.
Further, this approach allows to discriminate between individuals for which
the individual H0 (unit root present for individual series) is rejected/is
not rejected by Hommel's procedure (\insertCiteHOMM:88;textualplm) for
family-wise error rate control (FWER) at a pre-specified significance level
\alpha
via argument alpha
(defaulting to 0.05
), i.e., it controls
for the multiplicity in testing.
The function phansitest
takes as main input object
either a plain numeric
containing p-values of individual tests or a purtest
object which holds
a suitable pre-computed panel unit root test (one that produces p-values per
individual series).
The function's return value (see section Value) is a list with detailed evaluation of the applied Simes test.
The associated print
method prints a verbal evaluation.
For phansitest
, an object of class c("phansitest", "list")
which
is a list with the elements:
id
: integer, the identifier of the individual (integer sequence referring to
position in input),
name
: character, name of the input's individual (if it has a name,
otherwise "1", "2", "3", ...),
p
: numeric, p-values as input (either the numeric or extracted from
the purtest object),
p.hommel
: numeric, p-values after Hommel's transformation,
rejected
: logical, indicating for which individual the individual null
hypothesis is rejected (TRUE
)/non-rejected (FALSE
) (after controlling
for multiplicity),
rejected.no
: integer, giving the total number of rejected individual series,
alpha
: numeric, the input alpha
.
Kevin Tappe
purtest()
, cipstest()
### input is numeric (p-values)
#### example from Hanck (2013), Table 11 (left side)
pvals <- c(0.0001,0.0001,0.0001,0.0001,0.0001,0.0001,0.0050,0.0050,0.0050,
0.0050,0.0175,0.0175,0.0200,0.0250,0.0400,0.0500,0.0575,0.2375,0.2475)
countries <- c("Argentina","Sweden","Norway","Mexico","Italy","Finland","France",
"Germany","Belgium","U.K.","Brazil","Australia","Netherlands",
"Portugal","Canada", "Spain","Denmark","Switzerland","Japan")
names(pvals) <- countries
h <- phansitest(pvals)
print(h) # (explicitly) prints test's evaluation
print(h, cutoff = 3L) # print only first 3 rejected ids
h$rejected # logical indicating the individuals with rejected individual H0
### input is a (suitable) purtest object
data("Grunfeld", package = "plm")
y <- data.frame(split(Grunfeld$inv, Grunfeld$firm))
obj <- purtest(y, pmax = 4, exo = "intercept", test = "madwu")
phansitest(obj)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.