使用分类变量的sklearn线性回归

马里奥·贝塞拉(Mario Becerra)

我正在尝试使用sk-learn在Python中运行常规的线性回归,但是我有一些我不知道该如何处理的分类数据,特别是因为我是使用pandas导入数据的,read.csv()并且我从以前的经验中学到了很多东西,并且阅读了Pandas和sk-learn的相处不太好(尚未)。

我的数据如下所示:

Salary  AtBat   Hits    League  EastDivision
475     315     81      1       0
480     479     130     0       0
500     496     141     1       1

我想使用AtBat,Hits,League和EastDivision来预测Salary,其中League和EastDivision是分类的。

如果我通过numpy导入数据loadtext(),则会得到一个numpy数组,理论上可以与sklearn一起使用,但是当我使用DictVectorizer时会出现错误。我的代码是:

import numpy as np
from sklearn.feature_extraction import DictVectorizer as DV

nphitters=np.loadtxt('Hitters.csv',delimiter=',', skiprows=1)
vec = DV( sparse = False )
catL=vec.fit_transform(nphitters[:,3:4])

当我运行最后一行catL=vec.fit_transform(nphitters[:,3:4])时出现错误,错误是

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/lib/python2.7/dist-packages/sklearn/feature_extraction/dict_vectorizer.py", line 142, in fit_transform
    self.fit(X)
  File "/usr/lib/python2.7/dist-packages/sklearn/feature_extraction/dict_vectorizer.py", line 107, in fit
    for f, v in six.iteritems(x):
  File "/usr/lib/python2.7/dist-packages/sklearn/externals/six.py", line 268, in iteritems
    return iter(getattr(d, _iteritems)())
AttributeError: 'numpy.ndarray' object has no attribute 'iteritems'

我不知道如何解决它,另一件事是,一旦我获得了分类数据,该如何运行回归?就像分类变量是另一个数字变量一样?

我发现了几个类似于我的问题,但没有一个对我真正有用。

阿德里亚诺·阿尔梅达(Adriano Almeida)

基本上发生的事情是将1和0的向量传递给一个函数,该函数将获取键和值(例如字典)并为您创建表

D = [{'foo': 1, 'bar': 2}, {'foo': 3, 'baz': 1}]

会变成

array([[ 2.,  0.,  1.],
       [ 0.,  1.,  3.]])

或者

|bar|baz|foo  |<br>
|---|---|-----|<br>
| 2 | 0 | 1   |<br>
| 0 | 0 | 3   |<br>

阅读:http : //scikit-learn.org/stable/modules/generation/sklearn.feature_extraction.DictVectorizer.html

在您的情况下,数据已经准备好进行线性回归,因为特征联赛和东部分区已经是假人。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用带有分类变量的r输出中的lm()进行多元线性回归是不完整的?

来自分类Dev

使用sklearn进行线性回归的预测

来自分类Dev

使用scikit-learn(sklearn),如何处理缺失数据(因变量y)进行线性回归?

来自分类Dev

Sklearn - 线性回归

来自分类Dev

如何使用三个自变量拟合线性回归模型并使用sklearn计算均方误差?

来自分类Dev

多次拟合 sklearn 线性回归分类器是添加数据点还是替换它们?

来自分类Dev

大数据的sklearn线性回归

来自分类Dev

熊猫+ sklearn线性回归失败

来自分类Dev

具有字符串/分类特征(变量)的线性回归分析?

来自分类Dev

使用线性回归求解两个变量方程

来自分类Dev

使用线性回归在r中循环变量名称

来自分类Dev

使用生命线和分类变量进行Cox回归

来自分类Dev

线性回归实现总是比sklearn差

来自分类Dev

sklearn线性回归似乎无法正确拟合

来自分类Dev

numpy多项式线性回归与sklearn

来自分类Dev

R 具有分类变量和交互项的线性回归的嵌套横截面的可视化

来自分类Dev

使用Sklearn预测的线性回归不起作用。数据不合适

来自分类Dev

ValueError:尝试将sklearn的线性回归器拟合到熊猫数据框实例时使用matmul

来自分类Dev

使用python在没有SKlearn的情况下构建多类逻辑回归分类器

来自分类Dev

使用postgres进行线性回归

来自分类Dev

使用R的线性回归模型

来自分类Dev

使用线性回归的时间序列

来自分类Dev

线性回归分类器和线性回归提取机密区间有什么区别?

来自分类Dev

将线性回归与使用R的对数线性回归进行比较

来自分类Dev

scipy linregress的多变量线性回归

来自分类Dev

自动变量选择 - 回归线性模型

来自分类Dev

如何定义线性回归的目标变量

来自分类Dev

使用Purrr映射对df中每个预测变量进行若干线性回归

来自分类Dev

为什么使用Tensor Flow keras进行多变量线性回归会导致NaN损失

Related 相关文章

  1. 1

    使用带有分类变量的r输出中的lm()进行多元线性回归是不完整的?

  2. 2

    使用sklearn进行线性回归的预测

  3. 3

    使用scikit-learn(sklearn),如何处理缺失数据(因变量y)进行线性回归?

  4. 4

    Sklearn - 线性回归

  5. 5

    如何使用三个自变量拟合线性回归模型并使用sklearn计算均方误差?

  6. 6

    多次拟合 sklearn 线性回归分类器是添加数据点还是替换它们?

  7. 7

    大数据的sklearn线性回归

  8. 8

    熊猫+ sklearn线性回归失败

  9. 9

    具有字符串/分类特征(变量)的线性回归分析?

  10. 10

    使用线性回归求解两个变量方程

  11. 11

    使用线性回归在r中循环变量名称

  12. 12

    使用生命线和分类变量进行Cox回归

  13. 13

    线性回归实现总是比sklearn差

  14. 14

    sklearn线性回归似乎无法正确拟合

  15. 15

    numpy多项式线性回归与sklearn

  16. 16

    R 具有分类变量和交互项的线性回归的嵌套横截面的可视化

  17. 17

    使用Sklearn预测的线性回归不起作用。数据不合适

  18. 18

    ValueError:尝试将sklearn的线性回归器拟合到熊猫数据框实例时使用matmul

  19. 19

    使用python在没有SKlearn的情况下构建多类逻辑回归分类器

  20. 20

    使用postgres进行线性回归

  21. 21

    使用R的线性回归模型

  22. 22

    使用线性回归的时间序列

  23. 23

    线性回归分类器和线性回归提取机密区间有什么区别?

  24. 24

    将线性回归与使用R的对数线性回归进行比较

  25. 25

    scipy linregress的多变量线性回归

  26. 26

    自动变量选择 - 回归线性模型

  27. 27

    如何定义线性回归的目标变量

  28. 28

    使用Purrr映射对df中每个预测变量进行若干线性回归

  29. 29

    为什么使用Tensor Flow keras进行多变量线性回归会导致NaN损失

热门标签

归档