【问题标题】:Why convert numbers to factors while model bulding为什么在建模时将数字转换为因子
【发布时间】:2018-05-05 15:32:48
【问题描述】:

我正在学习使用逻辑回归构建模型的教程。 在本教程中,使用 as.factor 函数将具有数字数据类型和级别 3 的列转换为因子。我想知道这种转换的原因。

【问题讨论】:

  • 哪个教程?数据集看起来如何?没有更多信息,我们不知道为什么会这样做。但是像 0 1 2 中的性别这样编码的东西往往被设置为因素。
  • 您是否在问为什么 R 中的统计模型中的分类/名义变量(通常)编码为 factors?或者您是在询问factors 的一般用途吗?至于前者,请参见例如herehere。至于后者,我推荐任何基本的 R 教程。

标签: r regression data-science data-analysis


【解决方案1】:

如果具有少量唯一值的类“数字”向量保留在该形式中,逻辑回归,即glm( form, family="binomial", ...),将返回单个系数。通常,这不是数据所支持的,因此该教程的作者建议将这些向量转换为因子,以便 glm 函数对分类值进行默认处理。这些作者可能已经知道一个事实,即基础数据收集过程已经对具有数字级别的分类数据进行了编码,并且数据输入过程没有被“告知”作为分类处理。这可以使用colClasses 参数来完成,无论使用哪个read.* 函数。

大多数 R 回归例程对因子的默认处理使用第一个级别作为基线 (Intercept) 估计的一部分,并估计每个其他级别的系数。如果您将该向量保留为数字,您将得到一个估计值,该估计值可能被解释为序数变量效应的斜率。与这种序数关系编码相关的统计检验通常被称为“趋势的线性检验”,当“现实世界”中的数据情况可以解释为序数关系时,它有时是一个有用的结果。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-11-12
    • 2015-06-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-09-30
    相关资源
    最近更新 更多