如何使用scikitlearn的xgb回归函数缺失参数

2024-09-27 04:29:08 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在处理一个数据集,它包含某些列中缺少的值。我尝试使用Scikit学习包装器接口的XGBRegressor来实现XGBoost。在那里,它提供了一个名为“missing”的参数,您可以在其中输入浮点值,或者以python的NaN作为默认值。所以我需要一些帮助,比如如何使用这个参数来填充数据集中缺少的列值。如果你能给我举一个简单的例子,那会很有帮助。在


Tags: 数据参数scikitnan例子浮点missingxgboost
2条回答

missing value参数与您为“missing”参数提供的任何值一样工作,它将其视为缺少值。例如,如果您提供0.5作为缺失值,则无论它在数据中找到0.5,它都会将其视为缺失值。默认值为NaN。所以XGBoost所做的是基于它将其中一条路径定义为默认路径的数据。例如,基于一个参数,它可以在两个方向向左或向右移动,因此其中一个将根据数据设置为默认值。因此,每当一个缺少的值作为参数的输入,假设您将0.5定义为missing,那么每当0.5传入数据时,它就采用默认路径。一开始我以为它会对缺失的值进行插补,但事实并非如此。它只是将其中一个路径定义为默认路径,每当任何缺失的值出现时,它就采用默认路径。这在论文XGBoost: A Scalable Tree Boosting System中定义

据我所知你把事情搞混了。 缺少的参数只替换丢失的某个值(或值列表),默认值是“np.nan公司““

如果你想替换一些不同值的实际缺失值,比如说“X”,你必须在应用模型之前对你的数据进行修改。在

如果你有一个数据帧“df”,你可以:

df.fillna(X)

如果你有np.数组“阵列”您可以:

^{pr2}$

但以上内容将取代np.nan公司用0表示。在

希望有帮助

相关问题 更多 >

    热门问题