You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

员工晋升预测ML模型调用RFECV.predict触发TypeError错误如何解决

报错原因

这个报错本质是你调用predict方法的主体不是合法的scikit-learn估计器实例,结合你给出的代码,常见原因有3个:

  • 你直接调用了RFECV类的predict方法,而非已经初始化并拟合完成的RFECV实例的方法
  • RFECV初始化时传入的estimator参数为None,没有指定合法的基分类器/基回归器
  • 拟合RFECV时没有将拟合后的实例赋值给变量,导致调用predict的对象是空值
解决方法

按顺序检查修正你的代码即可:

  1. 先导入所需依赖,初始化合法的基估计器和RFECV实例:
from sklearn.feature_selection import RFECV
from sklearn.ensemble import RandomForestClassifier
import numpy as np

# 初始化基分类器,可根据你的任务替换为其他符合sklearn规范的估计器
base_estimator = RandomForestClassifier()
# 初始化RFECV实例,必须传入estimator参数
rfecv = RFECV(estimator=base_estimator, cv=5, scoring='roc_auc')
  1. 必须先用你的训练数据拟合RFECV实例,拟合完成后才能调用预测方法:
# X_train、y_train替换为你自己的训练特征、训练标签
rfecv.fit(X_train, y_train)
  1. 调用预测方法时使用拟合完成的RFECV实例,不要直接用RFECV类:
prediction = rfecv.predict(np.array([[2, #department code
                                      3, #masters degree
                                      1, #male
                                      1, #1 training
                                      30, #30 years old
                                      5, #previous year rating
                                      10, #length of service
                                      1, #KPIs met >80%
                                      1, #awards won
                                      95, #avg training score
                                      7, #sum of metric 
                                      700 #total score
                                     ]]))

print("Whether the Employee should get a Promotion : 1-> Promotion, and 0-> No Promotion :", prediction)

内容的提问来源于stack exchange,提问作者Shubham Singh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.11 07:15:04