当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


R step 在逐步算法中通过 AIC 选择模型


R语言 step 位于 stats 包(package)。

说明

选择 AIC 基于公式的模型。

用法

step(object, scope, scale = 0,
     direction = c("both", "backward", "forward"),
     trace = 1, keep = NULL, steps = 1000, k = 2, ...)

参数

object

表示适当类模型的对象(主要是 "lm""glm" )。这用作逐步搜索中的初始模型。

scope

定义逐步搜索中检查的模型范围。这应该是单个公式,或者是包含组件 upperlower (这两个公式)的列表。请参阅有关如何指定公式及其使用方法的详细信息。

scale

用于定义选择模型的 AIC 统计量,目前仅适用于 lmaovglm 模型。默认值 0 表示应估计比例:请参阅 extractAIC

direction

逐步搜索的模式,可以是 "both""backward""forward" 之一,默认为 "both" 。如果缺少 scope 参数,则 direction 的默认值为 "backward" 。值可以缩写。

trace

如果为正,则在 step 运行期间打印信息。较大的值可能会提供更详细的信息。

keep

一个过滤函数,其输入是拟合模型对象和关联的 AIC 统计量,其输出是任意的。通常keep 将选择对象组件的子集并返回它们。默认情况下不保留任何内容。

steps

要考虑的最大步骤数。默认值为 1000(本质上是需要的数量)。它通常用于提前停止该过程。

k

用于惩罚的自由度数的倍数。只有k = 2 提供真正的AIC:k = log(n) 有时称为BIC 或SBC。

...

extractAIC 的任何其他参数。

细节

step重复使用add1drop1;它将适用于它们适用的任何方法,这取决于 extractAIC 的有效方法。当可以选择加法常数以使 AIC 等于 Mallows 的 时,即可完成此操作并适当地标记表格。

搜索的模型集由 scope 参数确定。其lower 组件的右侧始终包含在模型中,模型的右侧包含在upper 组件中。如果scope 是单个公式,则它指定upper 组件,并且lower 模型为空。如果scope 缺失,则初始模型将用作upper 模型。

scope 指定的模型可以作为更新 object 的模板,如 update.formula 使用的那样。因此,在 scope 公式中使用 . 意味着“已经存在的内容”,而 .^2 表示现有项的所有交互。

使用 glm 与变量 scale 配合存在潜在问题,因为在这种情况下,偏差不仅仅与最大化对数似然相关。函数 extractAIC"glm" 方法对 gaussian 系列进行了适当的调整,但可能需要针对其他情况进行修改。 (binomialpoisson 系列默认修复了 scale,并且不对应于变量 scale 的特定 maximum-likelihood 问题。)

返回逐步选择的模型,最多带有两个附加组件。有一个 "anova" 组件对应于搜索中采取的步骤,如果在调用中提供了 keep= 参数,则还有一个 "keep" 组件。偏差表分析的 "Resid. Dev" 列是指一个常数减去两倍最大对数似然:仅在明确定义饱和模型的情况下才会出现偏差(因此不包括 lmaovsurvreg )。

警告

模型拟合必须将模型应用到同一数据集。如果存在缺失值,这可能会出现问题R的默认值是na.action = na.omit用来。我们建议您先删除缺失值。

调用函数 nobs 用于检查拟合过程中涉及的观测值数量是否保持不变。

注意

该函数与 S 中的函数有很大不同,S 中的函数使用许多近似值并且通常不计算正确的 AIC。

这是一个最小的实现。使用 MASS 包中的stepAIC 来实现更广泛的对象类。

例子


## following on from example(lm)

step(lm.D9)

summary(lm1 <- lm(Fertility ~ ., data = swiss))
slm1 <- step(lm1)
summary(slm1)
slm1$anova

作者

B. D. Ripley: step is a slightly simplified version of stepAIC in package MASS (Venables & Ripley, 2002 and earlier editions).

The idea of a step function follows that described in Hastie & Pregibon (1992); but the implementation in R is more general.

参考

Hastie, T. J. and Pregibon, D. (1992) Generalized linear models. Chapter 6 of Statistical Models in S eds J. M. Chambers and T. J. Hastie, Wadsworth & Brooks/Cole.

Venables, W. N. and Ripley, B. D. (2002) Modern Applied Statistics with S. New York: Springer (4th ed).

也可以看看

MASS add1drop1 中的stepAIC

相关用法


注:本文由纯净天空筛选整理自R-devel大神的英文原创作品 Choose a model by AIC in a Stepwise Algorithm。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。