step.adj {someMTP} | R Documentation |
Corrects the p-value due to model selection. It works with models of class glm
and selected with function step {stats\)
.
step.adj(object, MC = 1000, scope = NULL, scale = 0,
direction = c("both", "backward", "forward"),
trace = 0, keep = NULL, steps = 1000, k = 2)
object |
object of class |
MC |
number of random permutations for the dependent variable |
scope |
as in function |
scale |
as in function |
direction |
as in function |
trace |
as in function |
keep |
as in function |
steps |
as in function |
k |
as in function |
It performs anova function (stats library) on the model selected by function step vs the null model with the only intercept
and it corrects for multiplicity.
For lm
models and gaussian glm
models it computes a F-test, form other models it uses Chisquare-test (see also anova.glm
and anova.lm
help).
An anova
table with an extra column reporting the corrected p-value
Livio Finos and Chiara Brombin
L. Finos, C. Brombin, L. Salmaso (2010). Adjusting stepwise p-values in generalized linear models. Communications in Statistics - Theory and Methods.
set.seed(17)
y=rnorm(10)
x=matrix(rnorm(50),10,5)
#define a data.frame to be used in the glm function
DATA=data.frame(y,x)
#fit the model on a toy dataset
mod=glm(y~X1+X2+X3+X4+X5,data=DATA)
#select the model using function step
mod.step=step(mod, trace=0)
#test the selected model vs the null model
anova(glm(y~1, data=DATA),mod.step,test="F")
#step.adj do the same, but it also provides multiplicity control
step.adj(mod,MC=101, trace=0)