【AI之路】Catboost报错AttributeError: ‘DataFrame‘ object has no attribute ‘iteritems‘,竟然是版本问题!


前言


有2台电脑进行Catboost训练,新电脑训练一直正常,换到老电脑里总是报错,各种百度,还是没有解决问题,突然想到,会不会是版本环境问题。

一、运行报错

运行到:
train_pool = Pool(X_train, y_train, cat_features=cat_features)
报错:
AttributeError: ‘DataFrame’ object has no attribute ‘iteritems’

二、解决办法

升级Catboost库

pip install catboost -U -i https://pypi.tuna.tsinghua.edu.cn/simple

升级后,从catboost-1.0.6升级到catboost-1.2,再运行程序,一切OK。

(base) C:\Users\Administrator>pip install catboost -U -i https://pypi.tuna.tsinghua.edu.cn/simple
Looking in indexes: https://pypi.tuna.tsinghua.edu.cn/simple
Requirement already satisfied: catboost in d:\programdata\anaconda3\lib\site-packages (1.0.6)
Collecting catboost
  Downloading https://pypi.tuna.tsinghua.edu.cn/packages/94/d5/9ba3dd322006a4b6d9d07d759baa8956081cfca512031adcbef67bf8bcbe/catboost-1.2-cp310-cp310-win_amd64.whl (101.0 MB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 101.0/101.0 MB 7.5 MB/s eta 0:00:00
Requirement already satisfied: matplotlib in d:\programdata\anaconda3\lib\site-packages (from catboost) (3.7.1)
Requirement already satisfied: numpy>=1.16.0 in d:\programdata\anaconda3\lib\site-packages (from catboost) (1.23.5)
Requirement already satisfied: pandas>=0.24 in d:\programdata\anaconda3\lib\site-packages (from catboost) (2.0.1)
Requirement already satisfied: six in d:\programdata\anaconda3\lib\site-packages (from catboost) (1.16.0)
Requirement already satisfied: graphviz in d:\programdata\anaconda3\lib\site-packages (from catboost) (0.20.1)
Requirement already satisfied: plotly in d:\programdata\anaconda3\lib\site-packages (from catboost) (5.9.0)
Requirement already satisfied: scipy in d:\programdata\anaconda3\lib\site-packages (from catboost) (1.10.0)
Requirement already satisfied: tzdata>=2022.1 in d:\programdata\anaconda3\lib\site-packages (from pandas>=0.24->catboost) (2023.3)
Requirement already satisfied: pytz>=2020.1 in d:\programdata\anaconda3\lib\site-packages (from pandas>=0.24->catboost) (2022.7)
Requirement already satisfied: python-dateutil>=2.8.2 in d:\programdata\anaconda3\lib\site-packages (from pandas>=0.24->catboost) (2.8.2)
Requirement already satisfied: contourpy>=1.0.1 in d:\programdata\anaconda3\lib\site-packages (from matplotlib->catboost) (1.0.5)
Requirement already satisfied: fonttools>=4.22.0 in d:\programdata\anaconda3\lib\site-packages (from matplotlib->catboost) (4.25.0)
Requirement already satisfied: pillow>=6.2.0 in d:\programdata\anaconda3\lib\site-packages (from matplotlib->catboost) (9.4.0)
Requirement already satisfied: kiwisolver>=1.0.1 in d:\programdata\anaconda3\lib\site-packages (from matplotlib->catboost) (1.4.4)
Requirement already satisfied: pyparsing>=2.3.1 in d:\programdata\anaconda3\lib\site-packages (from matplotlib->catboost) (3.0.9)
Requirement already satisfied: packaging>=20.0 in d:\programdata\anaconda3\lib\site-packages (from matplotlib->catboost) (22.0)
Requirement already satisfied: cycler>=0.10 in d:\programdata\anaconda3\lib\site-packages (from matplotlib->catboost) (0.11.0)
Requirement already satisfied: tenacity>=6.2.0 in d:\programdata\anaconda3\lib\site-packages (from plotly->catboost) (8.0.1)
Installing collected packages: catboost
  Attempting uninstall: catboost
    Found existing installation: catboost 1.0.6
    Uninstalling catboost-1.0.6:
      Successfully uninstalled catboost-1.0.6
Successfully installed catboost-1.2

(base) C:\Users\Administrator>

总结

踏破铁鞋无觅处,得来全不费工夫。

以后报错了,先检查库文件版本,甚至是Python版本。生产系统和测试系统要保持环境一致,避免不必要的麻烦。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

IT里的交易员

分享是一种快乐,打赏是一种肯定

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值