决策树回归错误-ValueError:输入包含 NaN、无穷大或对于 dtype('float32') 而言太大的值
Posted
技术标签:
【中文标题】决策树回归错误-ValueError:输入包含 NaN、无穷大或对于 dtype(\'float32\') 而言太大的值【英文标题】:decision tree regressor error-ValueError: Input contains NaN, infinity or a value too large for dtype('float32')决策树回归错误-ValueError:输入包含 NaN、无穷大或对于 dtype('float32') 而言太大的值 【发布时间】:2020-08-23 06:21:41 【问题描述】:在对数据应用此决策树算法时,我遇到了下面提到的错误 - 谁能帮忙解决这个问题?
from sklearn.tree import DecisionTreeRegressor
regressor = DecisionTreeRegressor()
regressor.fit(X_train, y_train)
错误: ValueError:输入包含 NaN、无穷大或对于 dtype('float32') 来说太大的值。
【问题讨论】:
【参考方案1】:sklearn 告诉您 X_train 或 y_train 中缺少值。这在现实世界的数据集中很常见。由于机器学习算法通常需要数值才能进行数学运算,因此您需要以某种方式填充缺失值。常用方法包括将它们替换为列的平均值、中位数或众数。
这是在 sklearn 中估算缺失值的综合指南:https://scikit-learn.org/stable/modules/impute.html
【讨论】:
感谢您的评论,蒂加!我确实检查了数据集中的缺失值和异常值,但它仍然只显示相同的错误。 它是否包含对于 dtype('float32') 来说太大的值?以上是关于决策树回归错误-ValueError:输入包含 NaN、无穷大或对于 dtype('float32') 而言太大的值的主要内容,如果未能解决你的问题,请参考以下文章
ValueError 将 sklearn 和 pandas 用于决策树?
ValueError:不能有拆分数 n_splits=3 大于样本数:1