处理多元线性回归Python中的分类和数值变量
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了处理多元线性回归Python中的分类和数值变量相关的知识,希望对你有一定的参考价值。
所以我已经使用sklearn中的LinearRegression在Python中执行了多元线性回归。
我的自变量都是数字的(我的依赖变量也是如此)
但是现在我想进行一个结合数值和非数值独立变量的多元线性回归。
因此我有几个问题:
- 如果我使用虚拟变量或One-Hot用于非数字变量,那么我是否能够从sklearn执行LinearRegression?
- 如果是,我是否必须更改一些参数?
- 如果没有,我该如何进行线性回归?
- 困扰我的一件事是虚拟/单热方法不处理序数变量,对吧? (因为在我看来它不应该以相同的方式编码)
- 问题是:即使我想编码不同的名义和序数变量,Python似乎也无法区分它们两者之间的区别?
这个东西对你来说可能很容易,但现在你可以说我有点困惑,所以我真的可以使用你的帮助!
提前致谢,
亚历克斯
答案
- 如果我使用虚拟变量或One-Hot用于非数字变量,那么我是否能够从sklearn执行LinearRegression?
事实上,模型必须专门用数字数据输入,因此必须使用OneHot向量作为输入要素中的分类数据。为此你可以看看Scikit-Learn的LabelEncoder和OneHotEncoder。
- 困扰我的一件事是虚拟/单热方法不处理序数变量,对吧? (因为在我看来它不应该以相同的方式编码)
是。正如你所提到的,一个热门方法不处理序数变量。使用序数特征的一种方法是创建比例映射,并将这些特征映射到该比例。 Ordinal是这些案件非常有用的工具。您可以根据所提到的预定义比例映射为它提供映射字典。否则,显然它会随机将整数分配给不同的类别,因为它不知道推断任何订单。从文档:
序数编码使用单个整数列来表示类。可以传入一个可选的映射字典,在这种情况下,我们使用的知识是类本身有一些真正的顺序。否则,假定类没有真正的顺序,并且随机选择整数。
希望这可以帮助。
以上是关于处理多元线性回归Python中的分类和数值变量的主要内容,如果未能解决你的问题,请参考以下文章