虚拟变量是我们在回归分析中创建的一种类型的变量,这样我们就可以把一个分类变量表示为一个数字变量,它具有两个值中的一个:0或1。
例如,假设我们有以下数据集,我们想用年龄和婚姻状况 来预测收入:

为了在回归模型中使用婚姻状况作为预测变量,我们必须将其转换为虚拟变量。
由于它目前是一个分类变量,可以有三个不同的值("单身"、"已婚 "或 "离婚"),我们需要创建k-1=3-1=2的虚拟变量。
为了创建这个虚拟变量,我们可以让 "单身 "成为我们的基线值,因为它出现的频率最高。因此,这里是我们如何将婚姻状况转换为虚拟变量。

下面的例子显示了如何在SAS中为这个确切的数据集创建虚拟变量。
例子。在SAS中创建虚拟变量
首先,让我们在SAS中创建以下数据集:
/*create dataset*/

接下来,我们可以使用两个IF-THEN-ELSE语句来为状态变量创建虚拟变量:
/*create new dataset with dummy variables*/
data new_data;
set original_data;
if status = "married" then married = 1;
else married = 0;
if status = "divorced" then divorced = 1;
else divorced = 0;
run;
/*view new dataset*/
proc print data=new_data;

请注意,这两个虚拟变量的值(已婚和离婚)与我们在介绍性例子中计算的值一致。
如果我们愿意,我们可以在回归模型中使用这些虚拟变量,因为它们都是数字。
其他资源
下面的教程解释了如何在SAS中执行其他常见的任务:
如何在SAS中使用Proc Summary
如何在SAS中使用Proc Tabulate
如何在SAS中重命名变量
如何在SAS中创建新变量