TypeError:__init __()获得了意外的关键字参数'axis'

时间:2019-04-07 15:39:14

标签: python jupyter-notebook

我在Jupyter笔记本电脑中出现错误:

from sklearn.impute import SimpleImputer
imputer= SimpleImputer(missing_values = 'NaN', strategy = 'mean', axis= 0)

我的错误是

TypeError                                 Traceback (most recent call last)
<ipython-input-128-9f8271dfdf3c> in <module>
      1 from sklearn.impute import SimpleImputer
----> 2 imputer= SimpleImputer(missing_values = 'NaN', strategy = 'mean', axis= 0)

TypeError: __init__() got an unexpected keyword argument 'axis'

2 个答案:

答案 0 :(得分:0)

尝试一下:

from sklearn.impute import SimpleImputer
imputer = SimpleImputer(missing_values= np.NAN, strategy= 'mean', fill_value=None, verbose=0, copy=True)

答案 1 :(得分:0)

SimpleImputer中,轴参数已被删除。在不推荐使用的Imputer类中,它用于指定是沿列(默认为axis=0还是沿行(axis=1)插入值。显然,新的SimpleImputer类不再支持这种区分。这里有一些有关此的信息:

https://github.com/scikit-learn/scikit-learn/issues/10636

如果沿列进行插补(看起来是原始发布者),则只需删除axis参数,您将获得相同的行为。如果您需要沿行估算,那么我不知道还有哪些其他选择。经过一些搜索,我找不到答案。