如何在 R 中指定任意虚拟变量对比度? [复制]
Posted
技术标签:
【中文标题】如何在 R 中指定任意虚拟变量对比度? [复制]【英文标题】:How to specify an arbitrary dummy variable contrast in R? [duplicate] 【发布时间】:2012-07-28 11:03:33 【问题描述】:我知道 R 会自动从分类值创建虚拟变量,但它也会自动选择参考值(我认为是按字母顺序排列的?)。如何在不更改值名称的情况下指定不同的值作为参考?我意识到我可能可以按照我喜欢的顺序重新标记因子 a、b、c...,但这对我来说似乎有点笨拙。
为了清楚起见,我将举一个例子。假设因子是color,值是red、blue、green和yellow。
mod.lm <- lm(preference ~ color, data = flowers)
这种情况下的截距是针对 color = blue 的情况,但我想将其设为 yellow。我该怎么做呢?
【问题讨论】:
【参考方案1】:使用relevel
:
# In this case, the reference category is setosa
model <- lm(Sepal.Length ~ Species, data=iris)
summary(model)
# Now I want Virginica to be the reference category
iris$Species <- relevel(iris$Species, ref='virginica')
model <- lm(Sepal.Length ~ Species, data=iris)
summary(model)
你的情况可能是
flowers$color <- relevel(flowers$color, ref='yellow')
lm(preference ~ color, data = flowers)
这个模型会给你估计使用作为参考类别'yellow
'
【讨论】:
以上是关于如何在 R 中指定任意虚拟变量对比度? [复制]的主要内容,如果未能解决你的问题,请参考以下文章