首页 > 解决方案 > R 建模包是否将字符变量视为无序因子?

问题描述

我有属于字符列的分类变量。例如,一个字符列,其值全部为“yes”或“no”。即使我将它们保留为字符列,R 建模包是否会正确地将它们作为名义分类变量处理,或者这些包是否要求它们是无序因子?

标签: rcategorical-data

解决方案


每个函数都可以自由地做它想做的事情,但是如果函数使用model.matrix,那么它将把字符串当作因素。

2 级

x2 <- c("yes", "no", "yes")
model.matrix(~ x2)

给予:

  (Intercept) xyes
1           1    1
2           1    0
3           1    1
attr(,"assign")
[1] 0 1
attr(,"contrasts")
attr(,"contrasts")$x
[1] "contr.treatment"

3 级

x3 <- letters[1:3]
model.matrix(~ x3)

给予:

  (Intercept) xxb xxc
1           1   0   0
2           1   1   0
3           1   0   1
attr(,"assign")
[1] 0 1 1
attr(,"contrasts")
attr(,"contrasts")$xx
[1] "contr.treatment"

推荐阅读