我正在尝试建立一个线性回归模型,但是我的一些特征不是数值,例如“ Car Colour”,而其他特征是“ Engine Size”。在非数字情况下,我不确定在添加为输入要素时如何表示这一点。我能想到的唯一方法是用不同的值表示每种颜色,例如(红色= 1,蓝色= 2,绿色= 3 ...),但是这似乎不可接受,因为这意味着绿色是“比红色更好。
任何人都可以帮忙...我正在用Java实现此功能,因此,我希望以这种语言表示的算法或与语言无关的算法。
一种方法是使用伪编码,另一种技术是效果编码。
请参阅本文以获取更多详细信息,我认为作者的解释比我在这里可以做的要好。
回归模型中的分类变量编码:Resmi Gupta的虚拟和效应编码
我想这个解决方案将属于您的语言独立类别;)
编码汽车颜色(我假设汽车颜色只能采用3个值:红色,蓝色,绿色)
您可以对其进行如下编码:
Color Dummy_Var_One Dummy_Var_Two
Red 1 0
Blue 0 1
Green 0 0
在上表Green
中将成为参考级别。在您的情况下,如果您的颜色采用n
值,则需要包含n-1
虚拟变量。
可以在Weka过滤器NominalToBinary中找到Java实现,尽管这将为类别创建n
变量n
。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句