栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

成功解决(机器学习填补数值型缺失值时报错):TypeError: init() got an unexpected keyword argument ‘axis’

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

成功解决(机器学习填补数值型缺失值时报错):TypeError: init() got an unexpected keyword argument ‘axis’

成功解决(机器学习填补数值型缺失值时报错):TypeError: init() got an unexpected keyword argument ‘axis’




文章目录
  • 报错问题
  • 报错原因
  • 解决方法


报错问题

我的代码:

from sklearn.impute import SimpleImputer
import numpy as np

def si():
    sip = SimpleImputer(missing_values=np.nan, strategy='mean', axis=0)
    data = sip.fit_transform([[1, 2],
                             [np.nan, 3],
                             [7, 6]]
                            )
    print(data)


si()

报错内容:

Traceback (most recent call last):
  File "E:/Python/1.py", line 68, in 
    si()
  File "E:/Python/1.py", line 62, in si
    si = SimpleImputer(missing_values='Nan',strategy='mean',axis=0)
TypeError: __init__() got an unexpected keyword argument 'axis'



报错原因

报错原因:0.20新版功能:SimpleImputer取代了以前的sklearn.preprocessing.Imputer;而SimpleImputer参数中没有axis

SimpleImputer类参数如下:

SimpleImputer(missing_values=np.nan,strategy="mean",fill_value=None,verbose=0,copy=True,add_indicator=False)


解决方法

去掉代码中的axis=0参数,修改后代码如下:

from sklearn.impute import SimpleImputer
import numpy as np

def si():
    sip = SimpleImputer(missing_values=np.nan, strategy='mean')
    data = sip.fit_transform([[1, 2],
                             [np.nan, 3],
                             [7, 6]]
                            )
    print(data)


si()

再次运行成功:

[[1. 2.]
 [4. 3.]
 [7. 6.]]
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/976560.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号