什么是蟒蛇相当于R的NA?

时间:2015-02-22 03:53:27

标签: python numpy pandas scikit-learn data-scrubbing

什么是python相当于R的NA?

更具体一点: R具有NaN,NA,NULL,Inf和-Inf。 NA通常在缺少数据时使用。什么是python的等价物?

如numpy和pandas等库如何处理缺失值?

scikit-learn如何处理缺失值?

python 2.7和python 3有什么不同吗?

3 个答案:

答案 0 :(得分:11)

numpy中的

nan处理得很好:

>>> import numpy as np
>>> a = [1, np.nan, 2, 3]
>>> np.nanmean(a)
2.0
>>> np.nansum(a)
6.0
>>> np.isnan(a)
array([False,  True, False, False], dtype=bool)

答案 1 :(得分:6)

Scikit-learn目前不处理缺失值。 对于大多数机器学习算法,不清楚如何处理缺失值,因此我们依赖于在将它们提供给算法之前处理它们的用户。 Numpy没有“缺失”的价值。 Pandas使用NaN,但在数字算法中可能会导致混淆。可以使用掩码数组,但我们不会在scikit-learn(还)中这样做。

答案 2 :(得分:4)

pandas看看这个。

http://pandas.pydata.org/pandas-docs/dev/missing_data.html

pandas使用NaN。您可以使用isnull()not null()测试空值,使用dropna()等从数据框中删除它们。datetime对象的等价物为NaT