r - R 建模包是否将字符变量视为无序因子?
问题描述
我有属于字符列的分类变量。例如,一个字符列,其值全部为“yes”或“no”。即使我将它们保留为字符列,R 建模包是否会正确地将它们作为名义分类变量处理,或者这些包是否要求它们是无序因子?
解决方案
每个函数都可以自由地做它想做的事情,但是如果函数使用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"
推荐阅读
- spring - 在 Rest API 中定义端点的最佳约定是什么?
- angular - 如何在 Angular SSR 中获取 BASE_URL?
- javascript - 根据子子集属性从 REST API 获取数据 - 邮递员
- python - 是否有任何特殊输入可以破坏 Python 3 中的 input() 函数?
- ruby - 将函数存储在哈希中键的值中
- ssh - 从 circleci SSH 到 digitalocean 服务器
- python - 规范化熊猫数据框中的列
- mongodb - 在 mongodb 中为每个用户应用 FIFO 文档
- asp.net-mvc - 未调用 Azure 应用服务预热 ping 路径
- python - Python中有没有办法确保我的函数的一个参数是另一个函数?