![](/img/trans.png)
[英]sklearn error ValueError: Input contains NaN, infinity or a value too large for dtype('float32')
[英]Python input contains NaN, infinity or a value too large for dtype float32
我正在尝试使用 sklearn 的决策树分类器进行分类。 我已将训练和测试数据集存储到两个单独的 Pandas 数据帧中。 我像这样调用分类器:
classifier = DecisionTreeClassifier(criterion = 'entropy', random_state = 0)
classifier.fit(features_in_training_set, class_labels_in_training_set)
predictions = classifier.predict(features_in_testing_set)
但是,我收到此错误,这在使用树进行分类时似乎很常见。
ValueError: Input contains NaN, infinity or a value too large for dtype('float32').
我知道这两个数据集中都没有缺失值。 我正在使用 imputer 方法更改它们。 我的数据帧的打印显示了这一点,但要仔细检查,我也试过df.isna()
并且输出都是假的。 我认为我没有无穷大值,因为帧由二进制值组成。 我不想删除行或列,因为我不想减少我的数据集。 我也不想根据任何其他标准替换它们。
我不太确定如何找到对于 dtype float 32 来说哪些列太大,以及如何更改它们。 我有一种感觉,它可能是我的时间戳列。 这是训练数据框的一个片段,因为它非常大:
time A B
0 1.518999e+09 1 1
1 1.518999e+09 1 0
2 1.518999e+09 0 1
3 1.518999e+09 0 0
尝试检查数据框的摘要。 例如,如果您的数据框显示任何特征的缺失样本,则意味着某些观察值存在空值。
正在遇到可能被空除的情况。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.