问题 什么是python相当于R的NA?


什么是python相当于R的NA?

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

像numpy和pandas这样的库如何处理缺失值?

scikit-learn如何处理缺失值?

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


1338
2018-02-22 03:53


起源

大概 None如果我理解正确的话。 - Makoto
Numpy使用 蒙面数组。 - Veedrac


答案:


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


5
2018-02-23 01:33





nan 在numpy处理好很多功能:

>>> 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)

8
2018-02-22 06:03





对于 pandas 看看这个。

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

大熊猫使用 NaN。您可以使用测试空值 isnull() 要么 not null(),使用从数据框中删除它们 dropna() 等同于 datetime 对象是 NaT


2
2018-02-22 03:58



值得注意的是整数大熊猫 Series (或列)必须具有值。无法在整数系列中表示缺失值;通常的替代方法是上转换为具有的浮点类型 NaN。 - Paul