逻辑回归 - 使用其他变量创建新变量 (SAS)

Logistic regression - create new variable using others (SAS)

我有一个基于调查的小数据集(大约 80 obsv),我想使用 SAS 在其上执行逻辑回归。

我的调查包含一些变量(名为 X1、X2、X3),我想将它们重新组合为名为 X4 的新创建变量的类别。

问题是那些变量 X1-X3 已经有了类别(YES/NO/WITHOUT 意见)

我如何才能将它们重新组合为 X4 的类别,但要考虑到它们具有的值?

帮助您理解我的问题:

Y(=1/0) = X1 X2 X3

X1-X3 各有 3 个类别(YES/NO/WITHOUT 意见)

我要的是:

Proc 逻辑数据 = 有 ; 模型 Y = X4 和其他如年龄、城市...但 X4 可以取 3 个值。

问题不是基于 X1-X3 创建 X4,而是如何影响 X4 X1-X3 各自采用的值?

(注意:我说 X1-X3 但更多)

我在 SAS 中这样做,但即使是理论解释也会有所帮助!

谢谢。

我认为大部分评论都是正确的 - 这可能不会帮助您回归。

但是-回答如何从字面上做到这一点;通常你会做的是使用 2(或 3)的幂。

因此,对于您不关心第三个的典型“yes/no”,您可以这样分配:

x4 = (x1) + (x2 * 2) + (x3 * 4);

那么值将是这样的:

0 = (0,0,0)
1 = (1,0,0)
2 = (0,1,0)
3 = (1,1,0)
4 = (0,0,1)
5 = (1,0,1)
6 = (0,1,1)
7 = (1,1,1)

如果你真的希望“无意见”成为一个类别(这很复杂,但在很多情况下将“无意见”的人包括在内并不理想,除非有意见实际上是相关的,最好排除它们或估算值),那么您将使用 3 的幂来执行此操作。它的工作方式与 2 的幂相同,您只是有更多的类别组合(总共 27 个)。

x4 = (x1) + (x2 * 3) + (x3 * 9);

只需确保它们是 0/1/2 编码,而不是 1/2/3;如果它们是 1/2/3,则在乘法时减一。


你还能做些什么更好?从理论上讲,您可以做很多优于此实际分类的事情(这对您的过度拟合根本没有帮助)。

一个有用的术语是“崩溃”;参见例如 this paper by Bruce Lund et al for example (Plug: Bruce is giving a (not free) class in regression for WUSS later this month. You can use ANOVA to analyze which variables contribute to your model. You can use some other procedures like GLMSELECT;这是一般回归中的一个主要话题。

您还可以研究因子分析,例如 this SAS Book excerpt