【问题标题】:Reference Group for dummy coding [duplicate]虚拟编码参考组[重复]
【发布时间】:2013-05-02 17:06:45
【问题描述】:

在使用分类变量在 R 中使用 lm 函数进行建模时,有什么方法可以明确指定将哪个组作为虚拟编码的参考组??

【问题讨论】:

  • 啊,看来我提供的功能已经存在了。它也可能以更好的性能实现,但我将把我的留在下面以便更好地理解发生了什么。谢谢@Glen_b。

标签: r categorical-data


【解决方案1】:

我知道的最简单的方法是预先重新编码因子,以便您想用作参考的级别是第一个。

你可以用这样的函数来做到这一点:

recodeFactor<-function(f, ref=levels(f)[1])
{
  lvls<-levels(f)
  if(ref== lvls[1]) return(f)

  lvls<-c(ref, setdiff(lvls, ref))
  f<-factor(as.character(f), levels=lvls)
  return(f)
}

【讨论】:

  • 很棒的东西.. 非常感谢 Nick Sabbe
【解决方案2】:

您可以在lm 调用中执行此操作:

y <- rnorm(100, 0, 1)
x <- c(rbinom(50,1,.5),(2*rbinom(50,1,.5)))
lm(y ~ factor(x,c(1,0,2))) # one way
lm(y ~ factor(x,c(0,1,2))) # another way, etc.

【讨论】:

    猜你喜欢
    • 2023-03-15
    • 2018-03-13
    • 2011-06-17
    • 1970-01-01
    • 2011-07-24
    • 2018-01-05
    • 1970-01-01
    • 2019-01-01
    • 1970-01-01
    相关资源
    最近更新 更多