虚拟变量
这个主题提供了一个介绍虚拟变量,描述了软件创建了他们如何分类和回归问题,并展示如何创建虚拟变量使用dummyvar
函数。
虚拟变量是什么?
当您执行分类和回归分析时,您经常需要包括连续(定量)、分类(定性)预测变量。一个分类变量不能作为一个数字数组。数字数组都秩序和大小。一个类别变量可以有订单(例如,一个序数变量),但它没有大小。使用数值数组意味着一个已知类别之间的“距离”。适当的方法包括分类预测是虚拟变量。定义虚变量,使用指标变量的值0和1。
四个方案定义的软件选择一个虚拟变量的类型分析的基础上,接下来的部分将描述。例如,假设您有一个分类变量和三个类别:很酷的
,冷却器
,最酷的
。
完整的虚拟变量
代表类别变量使用三个虚拟变量与三个类别,每个类别的一个变量。
X0是一个哑变量的值1很酷的
,否则和0。X1是一个哑变量的值1冷却器
,否则和0。X2是一个哑变量的值1最酷的
,否则和0。
哑变量与参照组
代表三个类别的类别变量使用两个虚拟变量与参照组。
你可以区分很酷的
,冷却器
,最酷的
只使用X1和X2,没有X0。观察的很酷的
有0为虚拟变量。所代表的类别都是0参照组。
虚拟变量有序分类变量
假设的数学类别的排序很酷的
<冷却器
<最酷的
。这种编码方案使用1和1值,并使用更多的高等类别,1 s来表示排序。
X1是一个哑变量的值1冷却器
和最酷的
,1很酷的
。X2是一个哑变量的值1最酷的
否则,1。
你可以表明一个分类变量的数学订购使用“顺序”
名称-值对论点的分类
函数。
虚变量创建编码效果
影响编码使用1 0和1来创建虚拟变量。而不是使用0值代表一个参照组,如哑变量与参照组,影响编码使用1来表示最后一个类别。
创建虚拟变量
自动创建虚拟变量
统计和机器学习工具箱™提供了几种分类和回归拟合函数接受分类预测。一些拟合函数创建虚拟变量来处理分类预测。
以下是拟合函数的默认行为识别分类预测。
如果预测表中的数据,假设一个变量的函数是直言如果它是一个逻辑向量,分类向量,字符数组,字符串数组或单元阵列特征向量。使用决策树的拟合函数假设要求分类向量是连续变量。
如果是一个矩阵的预测数据,函数假设所有的预测都是连续的。
识别任何其他预测分类预测,通过使用指定它们“CategoricalPredictors”
或“CategoricalVars”
名称-值对的论点。
拟合函数句柄标识的分类预测如下:
fitckernel
,fitclinear
,fitcnet
,fitcsvm
,fitrgp
,fitrkernel
,fitrlinear
,fitrnet
,fitrsvm
使用两种不同的方案来创建虚拟变量,取决于一个分类变量是无序或命令。一个无序分类变量,函数使用完整的虚拟变量。
对于有序分类变量,函数使用虚拟变量有序分类变量。
参数回归拟合等功能
fitlm
,fitglm
,fitcox
使用哑变量与参照组。功能包括虚拟变量时,虚拟变量的估计系数相对于参照群体。例如,看到的线性回归和分类预测。fitlme
,fitlmematrix
和fitglme
允许您指定创建的方案通过使用虚拟变量“DummyVarCoding”
名称-值对的论点。功能支持三个方案:金宝app完整的虚拟变量(“DummyVarCoding”,“全部”
),哑变量与参照组(“DummyVarCoding”、“引用”
),虚变量创建编码效果(“DummyVarCoding”、“影响”
)。注意,这些功能不提供一个名称-值对参数用于指定分类变量。其他拟合函数接受分类预测使用的算法可以处理分类预测不创建虚拟变量。
手动创建虚拟变量
这个例子显示了如何创建自己的哑变量设计矩阵通过使用dummyvar
函数。这个函数接受分组变量和返回一个包含0和1的矩阵,它的列是虚拟变量的分组变量。
创建一个列向量的分类数据指定性别。
性别=分类({“男”;“女”;“女”;“男”;“女”});
创建虚拟变量性别
。
dv = dummyvar(性别)
dv =5×20 1 1 0 1 0 0 1 1 0
dv
有五行对应的行数性别
和两列独特的群体,女
和男性
。列顺序对应水平的顺序性别
。对于分类数组,默认顺序升序字母。你可以检查订单使用类别
函数。
类别(性别)
ans =2 x1细胞{'女'}{‘男性’}
使用虚拟变量回归模型,您必须删除一列(创建一个参照组)或没有截距项的回归模型。对于性别的例子,你只需要一个哑变量来表示两个性别。注意如果你添加一个截距项的完整设计矩阵dv
。
X =((5、1)的dv)
X =5×31 0 1 1 1 0 1 1 0 1 0 1 1 1 0
排名(X)
ans = 2
一个截距项的设计矩阵是满秩的,不可逆的。由于这种线性相关,只使用c- 1指示变量来表示一个分类变量c类别在回归模型的截距项。