r - 在 R 的逻辑回归模型中将虚拟变量的组合创建为单个变量
问题描述
我需要使用 R 在逻辑回归中将 3 个虚拟变量的可能组合创建为一个分类变量。我手动进行组合,如下所示:
新变量代码 | 变量_1 | 变量_2 | 变量_3 |
---|---|---|---|
1 | 0 | 0 | 0 |
2 | 0 | 1 | 0 |
3 | 0 | 1 | 1 |
4 | 1 | 0 | 0 |
5 | 1 | 1 | 0 |
6 | 1 | 1 | 1 |
我排除了其他两个选项(0 0 1)和(1 0 1),因为我不需要它们,它们没有由数据表示。然后,我将 new_variable_code 与其他预测变量一起用作逻辑回归中的一个因素。
我的问题是:是否有任何自动化方式来创建相同的 new_variable_code?甚至另一种计量经济学技术将 3 个虚拟变量编码为逻辑回归模型中的 1 个分类变量?
我的目标:了解哪个变量组合对结果变量的优势比最高(以及同一模型中解释的其他预测变量)。
谢谢
解决方案
我会使用 sep="." 创建一个带有粘贴的变量。并使其成为一个因素:
newvar <- factor( paste(variable_1, variable_2, variable_3, sep="."))
我认为将其设置为顺序值并不是一个好主意,它已经是一个带有级别的整数,因为这就是创建因子的方式。
推荐阅读
- f# - 使用工厂构造函数测试私有类型
- javascript - 如何使用 vue.js 通过 url 输入来调整我的一侧?
- python - 在“开始于”条件下使用 OR 逻辑函数来查找 xpath
- ruby-on-rails - 搜索嵌套资源
- c# - 如何在客户端和服务器之间共享 gRPC proto 数据
- java - 如何为视频视图制作自定义媒体控制器
- c# - 错误 CS0019:运算符“<”不能应用于“字符串”和“整数”类型的操作数
- typescript - TypeScript:类型“数字”不可分配给类型“0”
- java - 带有管道的 Shell 脚本无法在 Linux 上使用 java Runtime Process 执行
- ios - CupertinoTextField 中的 Flutter 文本验证